Advertisement
Guest User

Untitled

a guest
Aug 20th, 2014
150
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.25 KB | None | 0 0
  1. void left_rotate ( uint16_t *in,
  2. uint16_t *out,
  3. int16_t len,
  4. int16_t shift )
  5. {
  6. int16_t i, j;
  7.  
  8. j = (len / 2) - 1;
  9. for (i = 0; i < (len / 2); i++) {
  10. out[i] = (uint16_t) (in[i] << shift);
  11. if (i < j) {
  12. out[i] |= in[i + 1] >> ((int16_t) len - shift);
  13. } else {
  14. out[i] |= in[0] >> ((int16_t) len - shift);
  15. }
  16. }
  17. NSLog(@"In: %hd", (short)in);
  18. NSLog(@"Out: %hd", (short)out);
  19.  
  20. unsigned char * char1 = out;
  21.  
  22. NSLog(@"Char: %s", char1);
  23.  
  24. NSData * data1 = [[NSData alloc] initWithBytes:char1 length:sizeof(char1)];
  25.  
  26. NSLog(@"Data: %@", data1);
  27.  
  28. }
  29.  
  30. NSString * originStringData = @"acf7183f7673200BBA7719775b20393c4487fa008e13542f4013eb9b2eb7490e";
  31.  
  32. NSString * RotateNumber = @"0003";
  33.  
  34. NSData *data = originStringData;
  35. NSUInteger len = [data length];
  36. Byte *byteData = (Byte*)malloc(len);
  37. memcpy(byteData, [data bytes], len);
  38.  
  39. for(int i=0; i<sizeof(byteData); i++)
  40. {
  41. u_int16_t data2 = byteData[i];
  42. int16_t shift1 = (short)[RotateNumber intValue];
  43.  
  44. u_int16_t out1;
  45.  
  46. left_rotate(&data2, &out1, sizeof(byteData),shift1);
  47. }
  48.  
  49. <60055600><b8077b00><c1001c00><f9011f00>
  50.  
  51. 67b8c1fbb399005dd3b8cbbad901c9e2243fd004709aa17a009f5cd975ba4875
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement