XTEA를 사용하여 std :: vector를 암호화하려고합니다. std :: vector를 사용하면 많은 양의 데이터를 다루는 여러 가지 이점이 있으므로이를 사용하고 싶습니다.std :: vector를 사용하는 XTEA- 함수
XTEA-Alogrithm은 64 비트 데이터를 암호화하는 2 개의 부호없는 long (v0 및 v1)을 사용합니다.
xtea_enc(unsigned char buf[], int length, unsigned char key[], unsigned char** outbuf)
/* Source http://pastebin.com/uEvZqmUj */
unsigned long v0 = *((unsigned long*)(buf+n));
unsigned long v1 = *((unsigned long*)(buf+n+4));
내 문제는, 내가 char 벡터를 부호없는 긴 포인터로 변환하는 가장 좋은 방법을 찾고 있다는 것입니다.
암호화 기능을 위해 64 비트 부품으로 벡터를 분할하는 또 다른 방법이 있습니까?
질문에 어떤 종류의 벡터인지 명시 적으로 추가하는 것이 좋습니다. 당신은 정말로'std :: vector'을 가지고 있습니까? 'xtea_enc' 함수가 라이브러리에 의해 제공되는 것처럼 보이고, 구현 세부 사항을보고 있습니다. 데이터의 시작 부분에 포인터를 더한 다음 길이를 더한 값을 전달하면됩니다. –
NicholasM