• 제목/요약/키워드: PIPO 블록암호

검색결과 13건 처리시간 0.022초

PIPO 경량 블록암호 최적 구현 기술 동향 (PIPO block cipher optimal implementation technology trend)

  • 이민우;김동현;윤세영;서화정
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2023년도 춘계학술발표대회
    • /
    • pp.107-109
    • /
    • 2023
  • 본 논문은 PIPO 알고리즘의 최적 구현 기술들에 대한 연구 동향을 살핀다. PIPO는 선형, 차분 공격에 안전한 S-box를 사용하는 SPN 구조의 경량 블록 암호 알고리즘이다. 블록 크기는 64비트이고 비밀키 크기에 따라 PIPO-128과 PIPO-256으로 나뉜다. PIPO 알고리즘의 S-Layer, R-Layer, Addroundkey의 3가지 내부 동작과정과 각 라운드에서 사용되는 연산들에 대한 자세한 설명이 제공된다. 본 논문에서는 RISC-V 및 ARM 프로세서, CUDA GPGPU에서 PIPO 알고리즘을 최적화 구현하는 방법을 다룬다. 해당 연구들에선 최적 구현 기술을 적용하여 PIPO 암호를 적용하는 IoT 장치에서도 안전하고 빠른 암,복호화를 수행할 수 있음을 보였고, 기존 연구와의 비교를 통해 성능 향상이 이루어짐을 확인할 수 있다.

웹상에서의 PIPO 경량 블록암호 구현 및 성능 평가 (Implementation and performance evaluation of PIPO lightweight block ciphers on the web)

  • 임세진;김원웅;강예준;서화정
    • 한국정보통신학회논문지
    • /
    • 제26권5호
    • /
    • pp.731-742
    • /
    • 2022
  • PIPO는 ICISC'20에서 발표된 최신 국산 경량 블록암호로, 리소스가 제한된 IoT 상에서 구현하기 용이하도록 경량화 되어있다는 특징이 있다. 본 논문에서는 자바스크립트(Javascript), 웹어셈블리(WebAssembly)와 같은 웹 기반 언어를 사용하여 PIPO 64/128비트, 64/256비트를 구현하였다. PIPO의 비트슬라이스(BitSlice)와 TLU를 구현하여 성능평가를 진행하였으며 for문을 사용하여 작성한 일반 루프(Looped)와 for문을 풀어 작성한 루프 풀기(Unrolled)도 구현하여 성능을 비교했다. Google Chrome, Mozilla Firefox, Opera, Microsoft Edge와 같은 다양한 웹 브라우저와 윈도우즈, Linux, Mac, iOS, 안드로이드와 같은 OS별 다양한 환경에서 성능평가를 수행한다. 또한 C언어로 구현된 PIPO와 성능 비교도 수행하였다. 이는 웹상에서의 PIPO 블록암호 적용을 위한 지표로 사용될 수 있다.

경량 블록 암호 PIPO의 화이트박스 구현 기법 (A White Box Implementation of Lightweight Block Cipher PIPO)

  • 함은지;이영도;윤기순
    • 정보보호학회논문지
    • /
    • 제32권5호
    • /
    • pp.751-763
    • /
    • 2022
  • 최근 세계적으로 사물인터넷 부문의 지출 성장이 높아짐에 따라 이를 암호화하기 위한 경량 블록 암호의 중요성 또한 높아지고 있다. ICISC 2020에 제안된 경량 블록 암호 PIPO 암호화 알고리즘은 Unbalanced bridge 구조를 이용한 SPN 구조의 암호이다. 화이트박스 공격 모델은 공격자가 암호화 동작의 중간값까지 알 수 있는 상태를 의미한다. 이를 대응하기 위한 기법으로 2002년 Chow 등은 화이트박스 구현 기법을 제안하여 DES와 AES에 적용하였다. 본 논문에서는 경량 블록 암호 PIPO 알고리즘에 화이트박스 구현 기법을 적용한 화이트박스 PIPO를 제안한다. 화이트박스 PIPO는 Chow 등이 제안한 화이트박스 AES 대비 테이블의 크기는 약 5.8배, 연산 시간은 약 17배 감소하였다. 또한, 모바일 보안제품에 화이트박스 PIPO를 활용하였으며 적용 범위에 따른 테스트 케이스 별 실험 결과를 제시한다.

32-bit RISC-V상에서의 PIPO 경량 블록암호 최적화 구현 (Optimized Implementation of PIPO Lightweight Block Cipher on 32-bit RISC-V Processor)

  • 엄시우;장경배;송경주;이민우;서화정
    • 정보처리학회논문지:컴퓨터 및 통신 시스템
    • /
    • 제11권6호
    • /
    • pp.167-174
    • /
    • 2022
  • PIPO 경량 블록암호는 ICISC'20에서 발표된 암호이다. 본 논문에서는 32-bit RISC-V 프로세서 상에서 PIPO 경량 블록암호 ECB, CBC, CTR 운용 모드의 단일 블록 최적화 구현과 병렬 최적화 구현을 진행한다. 단일 블록 구현에서는 32-bit 레지스터 상에서 효율적인 8-bit 단위의 Rlayer 함수 구현을 제안한다. 병렬 구현에서는 병렬 구현을 위한 레지스터 내부 정렬을 진행하며, 서로 다른 4개의 블록이 하나의 레지스터 상에서 Rlayer 함수 연산을 진행하기 위한 방법에 대해 설명한다. 또한 CBC 운용모드의 병렬 구현에서는 암호화 과정에 병렬 구현 기법 적용이 어렵기 때문에 복호화 과정에서의 병렬 구현 기법 적용을 제안하며, CTR 운용모드의 병렬 구현에서는 확장된 초기화 벡터를 사용하여 레지스터 내부 정렬 생략 기법을 제안한다. 본 논문에서는 병렬 구현 기법이 여러 블록암호 운용모드에 적용 가능함을 보여준다. 결과적으로 ECB 운용모드에서 키 스케줄 과정을 포함하고 있는 기존 연구 구현의 성능 대비 단일 블록 구현에서는 1.7배, 병렬 구현에서는 1.89배의 성능 향상을 확인하였다.

32-bit RISC-V상에서의 경량 블록암호 PIPO 최적 병렬 구현 (Optimized parallel implementation of Lightweight blockcipher PIPO on 32-bit RISC-V)

  • 엄시우;장경배;송경주;이민우;서화정
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2021년도 추계학술발표대회
    • /
    • pp.201-204
    • /
    • 2021
  • PIPO 경량 블록암호는 ICISC'20에서 발표된 암호이다. 본 논문에서는 PIPO의 단일 평문 최적화 구현과 4평문 병렬 구현을 제안한다. 단일 평문 최적화 구현은 Rlayer의 최적화와 키스케쥴을 포함하지 않은 구현을 진행하였다. 결과적으로 키스케쥴을 포함하는 기존 연구 대비 70%의 성능 향상을 확인하였다. 4평문의 경우 32-bit 레지스터를 최대한 활용하여, 레지스터 내부 정렬과 Rlayer의 최적화 구현을 진행하였다. 또한 Addroundkey 구현에서 메모리 최적화 구현과 속도 최적화 구현을 나누어 구현하였다. 메모리 사용을 줄인 메모리 최적화 구현은 단일 평문 구현 대비 80%의 성능 향상을 확인하였고, 암호화 속도를 빠르게 구현한 속도 최적화 구현은 단일 평문 구현 대비 157%의 성능 향상을 확인하였다.

64-bit ARM 프로세서 상에서의 블록암호 PIPO 병렬 최적 구현 (Optimized implementation of block cipher PIPO in parallel-way on 64-bit ARM Processors)

  • 엄시우;권혁동;김현준;장경배;김현지;박재훈;심민주;송경주;서화정
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2021년도 춘계학술발표대회
    • /
    • pp.163-166
    • /
    • 2021
  • ICISC'20에서 발표된 경량 블록암호 PIPO는 비트 슬라이스 기법 적용으로 효율적인 구현이 되었으며, 부채널 내성을 지니기에 안전하지 않은 환경에서도 안정적으로 사용 가능한 경량 블록암호이다. 본 논문에서는 ARM 프로세서를 대상으로 PIPO의 병렬 최적 구현을 제안한다. 제안하는 구현물은 8평문, 16평문의 병렬 암호화가 가능하다. 구현에는 최적의 명령어 활용, 레지스터 내부 정렬, 로테이션 연산 최적화 기법을 사용하였다. 구현은 A10x fusion 프로세서를 대상으로 한다. 대상 프로세서상에서, 기존 레퍼런스 PIPO 코드는 64/128, 64/256 규격에서 각각 34.6 cpb, 44.7 cpb의 성능을 가지나, 제안하는 기법은 8평문 64/128, 64/256 규격에서 각각 12.0 cpb, 15.6 cpb, 16평문 64/128, 64/256 규격에서 각각 6.3 cpb, 8.1 cpb의 성능을 보여준다. 이는 기존 대비 각 규격별로 8평문 병렬 구현물은 약 65.3%, 66.4%, 16평문 병렬 구현물은 약 81.8%, 82.1% 더 좋은 성능을 보인다.

국산 경량 암호 PIPO에 대한 부채널 분석과 마스킹 기법 제안 (Side-Channel analysis and masking scheme for domestic lightweight cipher PIPO)

  • 심민주;김현준;권혁동;장경배;김현지;박재훈;엄시우;송경주;서화정
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2021년도 춘계학술발표대회
    • /
    • pp.171-174
    • /
    • 2021
  • 최근 사물인터넷(IoT) 환경에서 다양한 장비의 인터넷 통신이 가능하여 이에 적절한 경량 블록 암호 알고리즘에 대한 연구가 활발히 진행되고 있다. ICISC 2020에서 새로 발표된 국산 경량 블록 암호 알고리즘인 PIPO는 새로운 경량 S-Box를 조합한 unbalanced-Bridge 구조로 효율적인 비트슬라이싱 구현을 제공한다. IoT 환경에 PIPO가 적용되기 위해서는 부채널 분석에 대한 안전성이 보장되어야 한다. 따라서 본 논문에서는 PIPO가 1차 CPA 공격에 취약함을 확인한다. 그리고 부채널 공격에 대응하기 위해 1차 마스킹 기법을 제안한다. 제안한 마스킹 기법은 1차 CPA 공격에 안전하였으며, 마스킹 적용 전보다 -375%의 성능을 보였다. 그리고 기존 기법보다 1287% 속도가 빨라진 것을 확인하였다.

경량 블록 암호 PIPO의 MILP-Aided 디비전 프로퍼티 분석 및 인테그랄 공격 (MILP-Aided Division Property and Integral Attack on Lightweight Block Cipher PIPO)

  • 김제성;김성겸;김선엽;홍득조;성재철;홍석희
    • 정보보호학회논문지
    • /
    • 제31권5호
    • /
    • pp.875-888
    • /
    • 2021
  • 본 논문에서는 경량 블록 암호 PIPO에 대한 인테그랄 구별자(integral distinguisher)을 탐색한 결과를 통해 8-라운드 PIPO-64/128에 대한 키 복구 공격을 수행한다. ICISC 2020에서 제안된 경량 블록 암호 PIPO는 고차 마스킹 구현을 고려한 설계를 통해 부채널 공격에 대한 저항성을 갖는 효율적인 구현이 가능하다. 동시에 차분 분석, 선형 분석 등의 다양한 분석법을 적용하여 PIPO의 안전성을 보였다. 그러나 인테그랄 공격에 대해, 5-라운드 이상의 인테그랄 구별자가 존재하지 않을 것이라고 제안되었을 뿐 인테그랄 공격에 대한 안전성 분석은 현재까지 수행된 바 없다. 본 논문에서는 MILP 기반 Division Property를 통해 PIPO에 대한 인테그랄 구별자를 탐색하는 방법을 제시하고, 기존의 결과와 달리 6-라운드 인테그랄 구별자가 존재함을 보인다. 뿐만 아니라, PIPO의 라운드 함수 구조를 활용하여 입출력에 대한 선형 변환을 고려하는 인테그랄 구별자 탐색 방법을 통해 총 136개의 6-라운드 인테그랄 구별자를 제시한다. 마지막으로, 획득한 6-라운드 인테그랄 구별자 중 4개를 이용하여 2124.5849의 시간 복잡도와 293의 메모리 복잡도를 가지는 8-라운드 PIPO-64/128 키 복구 공격을 제안한다.

CUDA GPGPU 상에서 경량 블록 암호 PIPO의 최적 구현 (Optimal Implementation of Lightweight Block Cipher PIPO on CUDA GPGPU)

  • 김현준;엄시우;서화정
    • 정보보호학회논문지
    • /
    • 제32권6호
    • /
    • pp.1035-1043
    • /
    • 2022
  • 사물인터넷(IoT), 클라우드 컴퓨팅, 빅데이터 등의 확산으로 애플리케이션에 대한 고속 암호화의 필요성이 대두되고 있다. GPU 최적화는 GPU가 이론적으로 얻은 암호 분석 결과 또는 축소된 버전을 합리적인 시간에 검증하는데 사용될 수 있다. 본 논문에서는 다양한 환경에서 구현되고 있는 PIPO 경량암호를 대상으로 GPU 상에서 구현하였다. PIPO에 대한 무차별 대입 공격을 고려하여 최적 구현하였다. 특히 비트 슬라이싱 기법을 적용한 최적화 구현과 GPU 요소를 최대한 사용하였다. 결과적으로 제안 기법의 구현은 RTX 3060 환경에서 초당 약 195억의 처리량을 보여 이전 연구 보다 약 122배 높은 처리량을 달성하였다.

64-bit ARM 프로세서 상에서의 블록암호 PIPO 병렬 최적 구현 (Optimized Implementation of Block Cipher PIPO in Parallel-Way on 64-bit ARM Processors)

  • 엄시우;권혁동;김현준;장경배;김현지;박재훈;송경주;심민주;서화정
    • 정보처리학회논문지:컴퓨터 및 통신 시스템
    • /
    • 제10권8호
    • /
    • pp.223-230
    • /
    • 2021
  • ICISC'20에서 발표된 경량 블록암호 PIPO는 비트 슬라이스 기법 적용으로 효율적인 구현이 되었으며, 부채널 내성을 지니기에 안전하지 않은 환경에서도 안정적으로 사용 가능한 경량 블록암호이다. 본 논문에서는 ARM 프로세서를 대상으로 PIPO의 병렬 최적 구현을 제안한다. 제안하는 구현물은 8평문, 16평문의 병렬 암호화가 가능하다. 구현에는 최적의 명령어 활용, 레지스터 내부 정렬, 로테이션 연산 최적화 기법을 사용하였다. 또한 레지스터 내부 정렬을 매 라운드마다 진행하는 구현물과, 정렬을 최소화하는 구현물 두 종류로 구분하여 구현한다. 구현은 A10x fusion 프로세서를 대상으로 한다. 대상 프로세서 상에서, 기존 레퍼런스 PIPO 코드는 64/128, 64/256 규격에서 각각 34.6 cpb, 44.7 cpb의 성능을 가지나, 제안하는 기법 중, 일반 구현물은 8평문 64/128, 64/256 규격에서 각각 12.0 cpb, 15.6 cpb, 16평문 64/128, 64/256 규격에서 각각 6.3 cpb, 8.1 cpb의 성능을 보여준다. 이는 기존 대비 각 규격별로 8평문 병렬 구현물은 약 65.3%, 66.4%, 16평문 병렬 구현물은 약 81.8%, 82.1% 더 좋은 성능을 보인다. 레지스터 최소 정렬 구현물은 8평문 64/128, 64/256 규격에서 각각 8.2 cpb, 10.2 cpb, 16평문 64/128, 64/256 규격에서 각각 3.9 cpb, 4.8 cpb의 성능을 보여준다. 이는 기존 레퍼런스 코드 구현물 대비 각 규격별로 8평문 병렬 구현물은 약 76.3%, 77.2%, 16평문 병렬 구현물은 약 88.7% 89.3% 더 향상된 성능을 가진다.