2017-01-15 10 views
0

컴퓨터 과학 분야의 에세이 실험을하고 있으며 주제가 암호화되어 있습니다. AES Crypt와 Blowfish를 사용하여 암호화 된 파일의 파일 크기를 비교하고 싶습니다. 필자는 필자의 에세이 요구 사항 인 BigO를 계산할 필요가있다. 나는 이것을하는 방법에 대해 확신하지 못한다. 누군가 나를 도울 수 있다면 크게 감사 할 것이다.BigO 표기법을 계산하십시오.

또한이 주제에 대한 정당성에 대한 의견을 듣고 싶습니다. 어떤 알고리즘이 가장 작은 파일 크기를 생성하는지, 결과가 선형인지 확인하려고합니다. 비즈니스에서 메모리 및 리소스 사용을 줄이려 고 할 수도 있고, 소규모 파일의 경우 전송 속도가 더 빠르며 다운로드 속도가 더 빠르다는 점에 대한 정당성이 있습니다. 고맙습니다.

답변

1

AES와 Blowfish와 같은 암호화 알고리즘은 각 입력 바이트에 대해 하나의 출력 바이트를 생성하므로 AES와 Blowfish는 동일한 출력 크기를 생성합니다.

예외 : 둘 다 블록 기반 알고리즘이며 암호화 모드에 따라 입력 크기가 블록 크기의 배수로 채워 져야하므로 출력이 훨씬 커질 수 있습니다. AES의 경우 블록 크기가 16 바이트이고 Blowfish의 경우 블록 크기가 8 바이트이므로 출력은 입력보다 최대 하나 크기가 클 수 있습니다.

여러 암호화 알고리즘을 지원하는 Online encrypt tool과 같은 온라인 도구가 있습니다. 참고 : AES는 본질적으로 Rijndael-128입니다.

의견 :이 항목에 대한 타당성은 없으며, 잘 이해되고 문서화되어 있습니다. 하나를 선택할 때 암호화 된 크기의 이유가 없습니다. 그러나 Blowfish는 AES만큼 안전하지 않으므로 AES를 선택해야합니다. Blowfish 작성자도 AES를 사용했습니다.

참고 : 대부분의 CPU에는 AES에 대한 최적화 지침이 있으므로 일반적으로 AES가 최선의 선택입니다.

+0

감사합니다. 대단히 감사합니다. 나는 암호문이 평문과 크기가 다르지 않다는 것을 이해했다. 나는 그것이 단지 패딩 이었다는 것을 이해한다. 그러나 패딩이 암호화되었을 때 파일에 약간의 크기를 추가하기 때문에 이것을 조사하여 패턴이 있는지 확인하고 일반 텍스트의 파일 크기와 암호문 사이의 공통 비율이 있는지 확인하려고합니다. . 또한, 나는 주로 두 알고리즘에 대한 BigO를 계산하는 데 도움이 필요했습니다. –

+0

시간과 계산이 본질적으로 선형 O (n) 인 과거의 각 암호화에 대한 설정 시간이 있습니다. 패딩 (8 또는 16 바이트)은 데이터 길이가 증가함에 따라 중요하지 않습니다. 올인 올루 볼 수는 없습니다. – zaph

+0

@TreyAesthetics Zaph는 정확합니다. 당신이 선택한 주제는 당신에게 매우 지루한 결과를 줄 것입니다. 16의 배수로 반올림하기 때문에 패딩 패턴이 없으며 거의 ​​모든 암호화 알고리즘이 O (n)에서 작동합니다. –