2017-03-25 5 views
-2

RC6으로 문자열을 암호화하고 암호를 해독하고 싶지만 암호 라이브러리와 함께 작동하는 방법을 모르겠다면 나에게 스 니펫을 줄 수 있습니까?암호화를 사용하여 RC6로 암호화 및 암호 해독하는 방법 ++

고마워요!

+3

몇 가지 문제가 있습니다. 이 질문은 지나치게 광범위하고, 연구가 부족하며 일반적인 교육을 원합니다. CryptoPP 라이브러리의 온라인 문서는 무엇을 보았는가, 지금까지 작성한 코드와 지금까지 시도한 것과 어떤 방법으로보고있는 오류를 포함하여 작동하지 않는지 등의 정보를 추가하면 문제가 개선 될 수 있다고 생각합니다. . 또한 이전에 다른 암호화 라이브러리를 사용 했습니까? 그렇다면 아마도 CryptoPP 사용에 대한 경험을 대조하고 다른 경험에서 얻은 CryptoPP의 예상되는 동작을 설명하십시오. –

+0

안녕하세요, 많이 검색했지만 코드 예제를 찾을 수 없습니다. CryptoPP 문서를 읽었지 만 RC6의 암호화 및 암호 해독이 어떻게 작동하는지 이해하지 못합니다. 그래서 내가 당신에게 질문 할 것입니다. ! 감사합니다 – dirac

+2

RC6는 AES 후보 중 하나입니다. 라이브러리에서 제공하는 많은 블록 암호 중 하나입니다. AES 용 Crypto ++ 코드를 찾은 다음 AES → RC6의 복사/붙여 넣기를 수행하십시오. 따라서 Camellia 및 3DES를 비롯한 모든 블록 암호가이 인스턴스에서 작동해야합니다. 우리는 wiki에 [RC6] (https://www.cryptopp.com/wiki/RC6)이라는 페이지를 추가했지만 카멜리아의 복사/붙여 넣기 만했습니다. – jww

답변

2

여기에 AES를 사용하여 문자열을 암호화하는 방법을 보여주는 code from the Crypto++ website 스 니펫이 있습니다 (여기서 jww는 "RC6은 AES 후보 중 하나입니다") 코드 조각은 RC6의 시작점으로 사용할 수 있어야합니다

byte key[AES::DEFAULT_KEYLENGTH], iv[AES::BLOCKSIZE]; 
string plainText; 

// ... populate key, iv, plainText here 

string cipher; 
StringSink* sink = new StringSink(cipher); 
Base64Encoder* base64_enc = new Base64Encoder(sink); 
CBC_Mode<AES>::Encryption aes(key, sizeof(key), iv); 
StreamTransformationFilter* aes_enc = new StreamTransformationFilter(aes, base64_enc); 
StringSource source(plainText, true, aes_enc); 

인터넷에서 Crypto ++ 라이브러리의 샘플 코드를 검색 할 때이 정보를 발견했습니다. 틀림없이, 내가 기대했던 것만 큼 찾기가 힘들지 않았습니다.

StackOverflow의 관련 사이드 바는 Encrypt/Decrypt byte array Crypto++의 Q & A와 같이 도움이 될 것으로 믿는 다른 페이지를 지적합니다.

업데이트 : 오늘 (2000 년 3 월 26 일) the RC6 web page at the Crypto++ wiki site에 업데이트가 방금 나타났습니다. RC6 고유의 코드가 있습니다. 필요한 코드는 정확히 같습니다.

+0

그것은 AES이지 RC6는 아닙니다. – TheGreatContini

+2

@ TheGreatContini 예 동의 함. AES는 정확히 RC6이 아닙니다. 누군가 오늘 crypto ++ 위키 웹 사이트를 편집하고 특별히 RC6에 대한 코드를 추가했습니다. 나는 이것을 지적하기 위해 나의 대답을 업데이트했다. –

+1

@LouisLangholtz - 우리는 피드백 루프로 Stack Overflow (그리고 우리의 메일 링리스트)를 사용합니다. 사용자가 문제를 겪는다면 우리가하는 첫 번째 일 중 하나는 사후 부검입니다. 한 사용자가 질문을하면 다른 사용자가 질문을하게됩니다. 이 경우 기여 요인 중 하나는 우리 측에서 문서가 부족하다는 것이 었습니다. – jww