블로피시

위키백과, 우리 모두의 백과사전.
둘러보기로 가기 검색하러 가기
블로피시의 파이스텔 암호 함수

블로피시(blowfish)는 1993년 브루스 슈나이어가 설계한 키(key) 방식의 대칭형 블록 암호이다. 수많은 암호화 제품군에 포함되어 있다. 블로피시는 소프트웨어에서 양호한 암호화 속도를 제공하지만 현재는 고급 암호화 표준이 더 많은 눈길을 끌고 있다.

슈나이어는 블로피시를 일반 목적의 알고리즘으로 설계했으며 DES의 대안으로서 다른 알고리즘에 관련된 제약과 문제를 해결하기 위해 고안하였다. 블로피시가 공개되었을 당시에 수많은 다른 디자인들은 사유(클로즈드 소스)였고 정부 및 산업체의 기밀 사항 또는 특허화되어 있었다. 슈나이어는 "블로피시에는 특허가 없으며 모든 나라에서도 마찬가지일 것입니다. 그러므로 이 알고리즘은 퍼블릭 도메인에 속하며 누구든지 자유로이 사용할 수 있습니다."라고 언급하였다.

이 디자인의 유명한 기능에는 키 의존 S 박스, 더 복잡한 키 스케줄이 있다.

알고리즘[편집]

블로피시는 64비트 블록 크기, 또 32비트에서 최대 448비트에 이르는 가변 키 길이를 갖추고 있다.[1] 16 라운드 파이스텔 암호로서 대형 키 의존 S 박스를 이용한다. 구조는 수정된 S 박스를 사용하는 CAST-128과 비슷하다.

같이 보기[편집]

참고문헌[편집]

  • Vincent Rijmen, "Cryptanalysis and design of iterated block ciphers", doctoral dissertation, October 1997.
  • Bruce Schneier, Description of a New Variable-Length Key, 64-bit Block Cipher (Blowfish). Fast Software Encryption 1993: 191–204 [1].
  • Bruce Schneier, The Blowfish Encryption Algorithm—One Year Later, Dr. Dobb's Journal, 20(9), p. 137, September 1995 [2].
  • Serge Vaudenay, "On the weak keys of Blowfish," Fast Software Encryption (FSE'96), LNCS 1039, D. Gollmann, Ed., Springer-Verlag, 1996, pp. 27–32.

외부 링크[편집]