Openssl에 알고리즘 추가 ..

whitelka의 이미지


안녕하세요,
지난번 ARIA알고리즘을 Openssl에 포팅하려고 질문 올렸던 사람입니다.
Seed알고리즘처럼 openssl core에 추가시키는 방법으로 구현을 하려다가,
engine/ccgost (openssl v1.0.x) 디렉토리에 알고리즘이 구현되어 있는 것을 발견했습니다.
Readme 파일을 읽어 보니 openssl을 컴파일 하지 않아도, 이 엔진을 사용하여 구현할 수 있다고 하는데,
혹시 이 부분에 대해 아시는 분 계시면 답변 부탁드려요...
그럼 즐거운 하루 보내세요 ^. ^

IsExist의 이미지

제가 알기론 저건 특정 하드웨어 엔진이 어떤 알고리즘을 지원한다면
그 알고리즘을 사용하기 위한 방법인걸로 알고 있습니다.

현재 ARIA을 구현한 하드웨어 엔진이 있나요?
---------
간디가 말한 우리를 파괴시키는 7가지 요소

첫째, 노동 없는 부(富)/둘째, 양심 없는 쾌락
셋째, 인격 없는 지! 식/넷째, 윤리 없는 비지니스

이익추구를 위해서라면..

다섯째, 인성(人性)없는 과학
여섯째, 희생 없는 종교/일곱째, 신념 없는 정치

---------
간디가 말한 우리를 파괴시키는 7가지 요소

첫째, 노동 없는 부(富)/둘째, 양심 없는 쾌락
셋째, 인격 없는 지! 식/넷째, 윤리 없는 비지니스

이익추구를 위해서라면..

다섯째, 인성(人性)없는 과학
여섯째, 희생 없는 종교/일곱째, 신념 없는 정치

whitelka의 이미지

그렇다면 제가 생각했던 것과는 완전 다른 부분이군요..
제가 가진 것이라곤 ARIA알고리즘 밖에 없습니다.
결국 Openssl 소스에다가 다른 암호화 알고리즘 (AES, SEED 등) 처럼
직접 구현하는 것밖엔 다른 방법이 없는 걸까요...?!

yonghany의 이미지

간신히 컴파일 끝났습니다.
그런데 테스트는 엄두가 나지 않네요. 관련업무가 아니다 보니...^^;

SSL에SEED적용.pdf 문서를 참고로 시작했지만 버전이 다른건지 소스코드 구성이 약간 달라서
AES설정과 같게 맞췄습니다.
소스에서 "aria"로 검색하면 수정된 부분 보실수 있을 겁니다.
-----------------------------------------------------------
platform: windows server 2003 x86
asmembly compiler: nasm-2.07
perl: activeperl 5.10.1.1006
C++: msvc90
-----------------------------------------------------------
linux나 unix 같았으면 훨씬 수월했을 텐데...
윈도우만 사용한지 벌써 4년이 지나버렸네요 --;
-----------------------------------------------------------

%comspec% /k ""C:\Program Files\Microsoft Visual Studio 9.0\VC\vcvarsall.bat"" x86

set PERLHOME=d:\openssl\perl
set NASMHOME=d:\openssl\nasm-2.07
set PATH=%PATH%;%PERLHOME%\bin;%NASMHOME%;

cd openssl-0.9.8l-with-aria
perl Configure enable-aria enable-seed --openssldir=C:/openssl VC-WIN32
ms\do_nasm
nmake -f ms\ntdll.mak

%%% 근데 파일첨부는 어떻게 하죠????

송효진의 이미지

.txt 붙이시면 첨부됩니다.
파일 용량이 너무 크다면 그냥
http://pastebin.com/
요런데 이용하시면 좋을 것 같네요.

emerge money
http://wiki.kldp.org/wiki.php/GentooInstallSimple - 명령어도 몇 개 안돼요~
http://xenosi.de/

ymir의 이미지

ssl/ssl_locl.h 에서..

+#define SSL_ARIA 0x20000000L

를 추가하셨으니, SSL_ENC_MASK 도 같이 변경해 주셔야 할 것 같네요.

-#define SSL_ENC_MASK 0x1C3F8000L
+#define SSL_ENC_MASK 0x3C3F8000L

되면 한다! / 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 』

yonghany의 이미지

SSL_ENC_MASK도 변경을 해야하는군요^^

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.