SEED 암호화 컴포넌트 ECPlaza.Seed 소스 공개

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

사용법은 간단합니다.

ECPlazaSeed.dll을 다운로드 받은 다음 적당한 폴더에 복사한뒤 관리자 권한으로 도스창을 실행시켜서

regsvr32 ECPlazaSeed.dll

64bit OS에서는

c:\windows\syswow64\regsvr32 ECPlazaSeed.dll

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

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

cscript test.vbs

64bit OS에서는

c:\windows\syswow64\cscript test.vbs

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

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

  • Encrypt(sPlainText, sKey)

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

  • Decrypt(sCipherText, sKey)

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

사용 예제

Dim oSeed
Dim encdata, decdata
Set oSeed = Server.CreateObject("ECPlaza.Seed")
encdata = oSeed.Encrypt(data, userkey)
decdata = oSeed.Decrypt(encdata, userkey)

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

소스 다운로드

DLL 다운로드

테스트 스크립트 test.vbs

참고:

한국정보진흥원 SEED 알고리즘

SEED 알고리즘 – Java API
Seed알고리즘을 이용한 암호화 복호화 기능 수행하는 DLL 만들기

Related posts:

  1. Windows OS에서 원격지 폴더 미러링을 위한 rsync 설정 작성: 이홍기 (orinmir _at_ chonga _dot_ pe _dot_ kr)문서홈: http://chonga.pe.kr/computer/tips/작성일:...
  2. ASP: XSS방지를 위한 htmlspecialchars 함수 XSS방지를 위해 PHP에서는 htmlspecialchars함수를 사용하면 된다. ASP에서는 기본적으로 이런 기능의...