리버's 아름다운 소풍

Korean Semantic Web Conference - 12월 4일
한국정보진흥원(KISA)의 SEED 암호알고리즘을 ASP에서 사용하기 위해서 만든 ECPlaza.Seed 컴포넌트의 소스를 공개합니다. 이 컴포넌트는 ANSI X.923 패딩을 사용했고, BASE64 인코딩 절차를 한번 더 거쳤습니다.

사용법은 간단합니다.

ECPlazaSeed.dll을 다운로드 받은 다음 적당한 폴더에 복사한뒤
regsvr32 ECPlazaSeed.dll

을 하면 컴포넌트 등록이 끝납니다.

등록 확인은 테스트 스크립트를 다운 받아서
cscript test.vbs

를 도스창에서 실행해서 오류가 발생하지 않으면 제대로 둥록이 된 겁니다.


이 컴포넌트는 두가기 메쏘드를 제공합니다.

Encrypt(sPlainText, sKey)
sPlainText 평서문을 sKey를 가지고 SEED 암호화 및 Base64
인코딩한 결과를 반환합니다. sKey는 반드시 16자리여야만 합니다.


Decrypt(sCipherText, sKey)
sCipherText 암호문을 Base64 디코딩을 하고, SEED 복호화를
거쳐서 원 평서문을 반환합니다.

사용 예제


소스를 컴파일 하기 위해서는 Visual C++ 6가 필요합니다. 전 아직도 이걸 쓴답니다.ㅜ.ㅜ
Visual Stuio .Net에서는 컴파일 해보지 않앗습니다. 아마 컴파일이 안 될것 같습니다.


다운로드:
소스:



DLL :


테스트 스크립트 :




참고:
한국정보진흥원 SEED 알고리즘
SEED 알고리즘 - Java API
Seed알고리즘을 이용한 암호화 복호화 기능 수행하는 DLL 만들기

Daum 블로거뉴스
블로거뉴스에서 이 포스트를 추천해주세요.
추천하기
이 글의 관련글
일주일간 인기글
오늘 인기글

TRACKBACK :: http://river.ecplaza.net/river/trackback/314

댓글을 달아 주세요

  1. 이승대  댓글주소  수정/삭제  댓글쓰기

    안녕하세요 Seed 알고리즘 소스를 찾아서 리버님의 홈피까지 왔습니다. ^^
    지금 현재 제가 나가있는 사이트에는 리버님의 ECPlazaSeed 을 이용해서 암호화가 구축되어 있습니다. 요즘 현업의 요구사항이 있어서 이 암호화를 .NET 으로 구현된 프로그램에도 적용해야 되는 상황이 되었습니다.
    또 여러가지 이유로 c로 구현된 ECPlazaSeed 를 이용할수가 없어서 .NET 으로 재 작성해야되는 상황이구요. 리버님 혹시 .NET으로 구현해 놓은 ECPlazaSeed는 없나요?
    http://www.devpia.com/MAEUL/Contents/Detail.aspx?BoardID=217&MAEULNO=8&no=20472&page=7
    위의 링크에서 C# 으로 된 SEED 소스를 구했지만 Encryption 하면 리버님 모듈과 다른 결과가 나오네요
    (Padding 을 수정해도 잘 안되네요)
    제가 C 는 잘 몰라서 이렇게 도움을 청합니다.
    .NET 모듈로 구현한 ECPlazaSeed 가 있으면 좀 보내주세요 음 그것이 안된다면 위 링크의 소스가 왜 리버님 모듈과 다른 지 이유 좀 알려주세요 ㅜ.ㅜ

    오늘도 좋은 하루 되세요~~

    - 개발자 이승대 ( mailto : seungdae@hanmail.net )

    2008/12/19 09:55
    • 리버  댓글주소  수정/삭제

      .NET으로 구현된 ECPlazaSeed는 없습니다. 안타깝게도 제가 .NET을 몰라서 바로 도움을 드릴 수가 없을 것 같습니다. 그래도 소스를 한번 비교해 보도록 하겠습니다. 회사일이 바빠서 시간은 좀 걸릴 것 같습니다.

      2008/12/22 13:33
  2. 초보  댓글주소  수정/삭제  댓글쓰기

    제가 Com은 초보라서 정말 좋은 소스를 보여주셔도 불러올수가없네요
    Visual C++ 6에서 작업중인데 불러오는 방법좀 알려주실수있으신지요
    클레스위자드에서 불러왔는데 이런식으로 사용하는게 아닌가요 다른방법으로 불러와야될런지요
    ISeed nSeed;
    CString sKey,sSrc;
    CString sTemp,sTemp2;
    sKey = "1234567890123456";
    sSrc = "this is a test.";
    sTemp = nSeed.Encrypt(sSrc,sKey);
    sTemp2 = nSeed.Decrypt(sTemp,sKey);

    이상태로 하면 OutPut창에
    Warning: attempt to call Invoke with NULL m_lpDispatch! 이렇게 나옵니다.

    2008/12/30 18:24
  3. 비밀방문자  댓글주소  수정/삭제  댓글쓰기

    관리자만 볼 수 있는 댓글입니다.

    2009/04/15 11:33
  4. 박주현  댓글주소  수정/삭제  댓글쓰기

    ASP에서 암호화 컴포넌트인 ECPlazaSeed.dll를 사용하고 있습니다.
    그런데 아래와 같은 에러가 나오면서 ECPlazaSeed.dll이 더이상 실행되지 않습니다.

    에러코드
    Microsoft VBScript 오류 '800a01fb'

    예외 사항 발생: 'oSeed.decrypt'

    /log/new_log.asp, 줄 40

    복호화 소스

    id = Trim(request("id"))

    userkey = "1234567890123456"
    Set oSeed = Server.CreateObject("ECPlaza.Seed")

    id = oSeed.decrypt( id, userkey )

    Set oSeed = Nothing


    그래서 레지스트리에 등록 삭제후 재등록 한후에 iisreset를 하면 다시 실행되고 있는데,
    도저히 어떤 현상으로 이런 에러가 반복적으로 발생하는지 알수가 없네요~

    테스트로 정상적으로 암호화된 문자열을 변형해서 테스트 한 경우 위와 같은 에러가 발생하면서 dll이 작동을 멈추는것 같습니다.

    답변 부탁드리겠습니다.

    개발자 박주현 (mailto:zzuzzuba74@naver.com)

    2009/08/27 20:24
  5. 비밀방문자  댓글주소  수정/삭제  댓글쓰기

    관리자만 볼 수 있는 댓글입니다.

    2009/10/21 11:03
  6. 비밀방문자  댓글주소  수정/삭제  댓글쓰기

    관리자만 볼 수 있는 댓글입니다.

    2009/10/27 21:47
  7. 비밀방문자  댓글주소  수정/삭제  댓글쓰기

    관리자만 볼 수 있는 댓글입니다.

    2009/10/28 17:12
[로그인][오픈아이디란?]

1  ... 73 74 75 76 77 78 79 80 81  ... 327 
BLOG main image
리버's 아름다운 소풍
이씨플라자 개발자가 살아가는 이야기
by 리버

공지사항

카테고리

전체 (327)
살.아.가.며. (184)
웹.이.야.기. (74)
OS (13)
Software (17)
Security (4)
SQL Server (8)
Programming (24)

달력

«   2009/11   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30          
textcubeDesignMyselfget rss

495

400

-30 days

today : 96