최근 수정 시각 : 2024-11-03 15:54:52

ARIA(알고리즘)


''' 이론 컴퓨터 과학
{{{#!wiki style="display: inline-block; font-family:Times New Roman, serif;font-style:italic"'''
{{{#!wiki style="margin: 0 -10px -5px; min-height: calc(1.5em + 5px)"
{{{#!folding [ 펼치기 · 접기 ]
{{{#!wiki style="margin: -5px -1px -11px"
<colbgcolor=#a36> 이론
기본 대상 수학기초론{ 수리논리학( 논리 연산) · 계산 가능성 이론 · 범주론 · 집합론} · 이산수학( 그래프 이론) · 수치해석학 · 확률론 통계학 · 선형대수학
다루는 대상과 주요 토픽
계산 가능성 이론 재귀함수 · 튜링 머신 · 람다대수 · 처치-튜링 명제 · 바쁜 비버
오토마타 이론 FSM · 푸시다운 · 튜링 머신( 폰노이만 구조) · 정규 표현식 · 콘웨이의 생명 게임 · 형식언어
계산 복잡도 이론 점근 표기법 · 튜링 기계^ 고전, 양자, 비결정론적, 병렬 임의접근 기계^ · 알고리즘 · 자료구조 · 알고리즘 패러다임( 그리디 알고리즘, 동적 계획법)
정보이론 데이터 압축( 무손실 압축 포맷 · 손실 압축 포맷) · 채널 코딩(채널 용량) · 알고리즘 정보 이론(AIT) · 양자정보과학
프로그래밍 언어이론 프로그래밍 언어( 함수형 언어 · 객체 지향 프로그래밍 · 증명보조기) · 메타 프로그래밍 · 유형 이론 · 프로그래밍 언어 의미론 · 파싱 · 컴파일러 이론
주요 알고리즘 및 자료구조
기초 정렬 알고리즘 · 순서도 · 탐색 알고리즘
추상적 자료형 및 구현 배열^ 벡터^ · 리스트^ 연결 리스트^ · 셋(set)^ 레드-블랙 트리, B-트리^ · 우선순위 큐^, 피보나치 힙^
수학적 최적화 조합 최적화 외판원 순회 문제 · 담금질 기법 · 유전 알고리즘 · 기계학습
볼록 최적화 내부점 방법 · 경사하강법
선형계획법 심플렉스법
계산 수론 및 암호학 밀러-라빈 소수판별법 · Pollard-rho 알고리즘 · 쇼어 알고리즘 · LLL 알고리즘 · 해시( MD5 · 암호화폐 · 사전 공격( 레인보우 테이블) · SHA) · 양자 암호
대칭키 암호화 방식 블록 암호 알고리즘( AES · ARIA · LEA · Camellia) · 스트림 암호 알고리즘(RC4)
공개키 암호화 방식 공개키 암호 알고리즘( 타원 곡선 암호 · RSA) · 신원 기반 암호 알고리즘(SM9)
계산기하학 볼록 껍질 · 들로네 삼각분할 및 보로노이 도형^Fortune의 line-sweeping 알고리즘^ · 범위 탐색^vp-tree, R-tree^ · k-NN
그래프 이론 탐색^ BFS, DFS, 다익스트라 알고리즘, A* 알고리즘^ · 에드몬드-카프 · 크루스칼 알고리즘 · 위상 정렬 · 네트워크 이론
정리
정지 문제 대각선 논법 · 암달의 법칙 · P-NP 문제미해결 · 콜라츠 추측미해결
틀:이산수학 · 틀:수학기초론 · 틀:컴퓨터공학 }}}}}}}}}


1. 개요

1. 개요

ARIA

2003년 SEED를 개발한 KISA에서 SEED의 암호가 휘청휘청 거리자 개발한 것으로, 국정원과 함께 개발한 Academy(학계), Research Institute(연구소), Agency(정부 기관)의 첫 글자들을 따서 이름을 지었다.

어쨌든 2004년 KS X 1213:2004로 국가 표준이 되었으며, 2010년 국제 표준이 되었다. SEED와 마찬가지로 대한민국 안에서만 주로 쓰이지, 바깥에선 잘 안 쓰이는 암호 알고리즘이다. 사실 국내에서도 탑재가 의무화되었을 뿐이지 잘 사용하진 않는게 함정 민간용에선 AES로, 국가용으론 ARIA를 쓰겠다는 생각인 것으로 보인다.

ARIA의 알고리즘은 암호화와 복호화를 수행하는 라운드 함수와 키 확장으로 구성되어 있다. ARIA 라운드 함수의 기본구조는 Involution SPN 구조이다.[1] ARIA는 평문 128비트를 암호화하는 블록 암호 알고리즘으로, 키크기는 128, 192, 256비트이며, 이때의 각각의 라운드 함수 수는 12, 14, 16라운드이다. 복호화 / 암호화에 동일 알고리즘을 사용하며 평문 암호화 알고리즘은 SBOX와 Permutation, 라운드 키 연산으로 구성되어 있다. 평문 암호화 과정에서 사용되는 라운드 키 생성 알고리즘은 Feistel 구조를 바탕으로 키를 생성한다. 성능면에선 소프트웨어에서 AES에게 부족하지만, 일본의 카멜리아에 비하면 좋은 편이며, 하드웨어의 경우 AES와 비견되는 정도다. 성능면에서 AES에게 꿀리는 이유는 AES는 암호화 테이블을 가지고 고속화 처리를 하지만 ARIA는 순수연산으로 암호화를 처리한다. 하드웨어 스펙이 높아지면 ARIA도 AES에 성능이 근접하지만 임베디드와 같은 낮은 스펙의 하드웨어에서는 망했어요 수준이 된다. 이 때문에 KISA에서는 HIGHT라는 경량 암호화체계를 제시했고 국제 표준으로도 인정받았다.[2] 최근에는 LEA와 같은 경량화 암호가 나오기도 하였다. 또한 OpenSSL에도 포팅 가능하다. 그래도 일반인은 모른다.

대한민국 공공기관에 납품되는 모든 소프트웨어(정보관련)는 필수적으로 ARIA / SEED 알고리즘을 갖고 있어야 인증을 받을 수 있다. 어떻게 보자면 무역장벽(…). 일부러 만든 일종의 무역 장벽이 맞다. 이로 인해 아리아 한글 아래아 한글도 문서 암호화를 위해 ARIA 알고리즘을 탑재하고 있다고 한다. 즉, 사람들에게 알려지진 않았으나 은연중에 한국에서 강제적으로 사용되는 암호화 알고리즘. 당연히 아래아 한글을 만든 한글과컴퓨터 등의 회사가 참여하고 있는 전자책 표준 DRM도 ARIA를 사용한다.


[1] 라운드 함수의 내부는 라운드 키 덧셈, 치환 계층 그리고 확산계층으로 구성 되어 있다. 따라서 클럭 속도를 높이기 위하여 각 계층 사이에 레지스터를 삽입하여 파이프라인 구조를 가진다. [2] ARIA 암호 알고리즘은 Xilinx VertxeEXCV Series를 디바이스를 사용하여 최대 동작 주파수 68.3 MHz, 674Mbps의 처리율로 동작하는 성능이 나온다. 암호 알고리즘인 AES, SEED등이 고속 처리를 위하여 파이프라인 처리로 높은 쓰루풋의 결과를 나타내고 있으며, ARIA 암호 알고리즘도 충분한 성능을 보인다.

파일:CC-white.svg 이 문서의 내용 중 전체 또는 일부는 문서의 r182에서 가져왔습니다. 이전 역사 보러 가기
파일:CC-white.svg 이 문서의 내용 중 전체 또는 일부는 다른 문서에서 가져왔습니다.
[ 펼치기 · 접기 ]
문서의 r182 ( 이전 역사)
문서의 r ( 이전 역사)