Openssl 에 암호화 알고리즘 추가하기.

whitelka의 이미지

안녕하세요,

openssl에 암호화 알고리즘인 ARIA를 추가하고 싶은데, 어떻게 추가해야 할지 막막해서
이렇게 글 씁니다.
아주 간략히(?) 라도 알고리즘 추가방법 아시는 분 도움 요청드릴께요...

feanor의 이미지

SEED의 경우를 참고하면 될 듯 합니다. 시간이 꽤 지났는데 패치는 여전히 잘 다운이 되는군요.
http://openlook.org/blog/2006/01/21/cb-1028/
http://openlook.org/blog/2006/08/11/cb-1109/

ymir의 이미지

0.9.8f 부터던가..? SEED 가 포함되었습니다.
이를 참고해서, seed 및 OPENSSL_NO_SEED 로 파일들을 모두 찾아서..
비슷한 형식으로 ARIA 를 추가해 주면 될 듯 합니다.
그 이전 버전과 diff 떠써 패치 만들어 보면..
변경에 필요한 파일들을 찾을 수 있을 것 같네요.

되면 한다! / feel no sorrow, feel no pain, feel no hurt, there's nothing gained.. only love will then remain.. 『 Mizz 』

되면 한다! / feel no sorrow, feel no pain, feel no hurt, there's nothing gained.. only love will then remain.. 『 Mizz 』

whitelka의 이미지

crypto 디렉토리에 ARIA 소스 추가한 뒤 컴파일 같이 되도록 메이크 파일만 수정해 주고..
라이브러리에서 해당 ARIA함수 꺼내 써봤더니 되던데요...
이런 방식으로 추가하면 안되는 건가요??!! 꼭 변수 같은것도 추가해 줘야 하는건지 ...ㅠ .ㅠ

ymir의 이미지

물론 crypto library 에서 ARIA 암/복호화 함수를 직접 호출해서 사용하는 경우에는 그 정도로 충분합니다.
(이 경우에는 굳이 libcrypto 에 붙이지 않고, 그냥 별도의 library 로 만들어도 됩니다.)

다만, EVP API 나 SSL 에서 사용하려면...
키 생성함수나, 각각의 모드 별 수행 함수 등록, cipher suite 등록...
테스트 프로그램 수정 등 해야 할 일이 많아집니다.
(openssl 명령도 수정해 두면, 암호 알고리즘 테스트가 간편해집니다.)

만약 SSL 에서도 사용해야 하는 경우라면, 그 때 SEED 알고리즘을 참고하시면 도움이 될 겁니다.

되면 한다! / feel no sorrow, feel no pain, feel no hurt, there's nothing gained.. only love will then remain.. 『 Mizz 』

되면 한다! / feel no sorrow, feel no pain, feel no hurt, there's nothing gained.. only love will then remain.. 『 Mizz 』