리눅스 커널의 SHA-256 코드 개선: 사용 용이성 및 성능 향상

전문: https://www.phoronix.com/news/Linux-SHA256-Crypto-Refactoring

원저자: Michael Larabel | 작성일: 2025-04-27 10:20
사이트 내 게시일: 2025-04-27 10:23
리눅스 커널의 SHA-256 코드가 사용 용이성과 성능 향상을 목표로 한 중요한 개선 작업을 진행하고 있습니다. 새로운 패치 시리즈는 기존의 아키텍처 최적화된 SHA-256 코드를 리팩토링하여, crypto_shash API뿐만 아니라 라이브러리 API를 통해 접근할 수 있도록 하고 있습니다. 이 변화는 CRC32 및 ChaCha와 같은 다른 알고리즘에 대한 유사한 업데이트와 일치합니다.

라이브러리 API 위에 SHA-256 crypto_shash API를 재구현함으로써 성능이 중요한 상황에서도 사용할 수 있게 되며, 이는 주목할 만한 발전입니다. 새로운 설계는 코드베이스를 단순화하여 1200줄 이상의 음수 diffstat을 달성하였으며, 이는 복잡성 감소와 유지보수 용이성을 나타냅니다.

또한, 이번 업데이트는 아키텍처 최적화된 SHA-256이 기본적으로 비활성화되어 있어 사용자가 이를 활성화하는 것을 잊는 경우가 많았던 오랜 문제를 해결합니다. 현재 SHA-256 라이브러리는 crypto_shash 자체 테스트에 의해 잘 지원되고 있으며, 향후 라이브러리에 대한 직접 테스트를 추가할 계획이 있습니다.

이 패치 시리즈는 arm, arm64, riscv 및 x86 아키텍처에서 완전히 테스트되었습니다. 그러나 mips, powerpc, s390 및 sparc에서의 테스트는 해당 플랫폼에서 SHA-256 명령어에 대한 QEMU의 지원 한계로 인해 부분적으로 진행되었습니다. 저자는 관련 시스템에 접근할 수 있는 사용자들이 이러한 아키텍처에서 crypto 자체 테스트를 검증할 것을 권장하지만, 새로운 코드의 간단한 특성으로 인해 문제는 발생하지 않을 것으로 예상하고 있습니다.

* 이 글은 phoronix.com의 기사를 요약한 것입니다. 전체 기사의 내용은 이곳에서 확인하실 수 있습니다.
카테고리: Software
태그: Performance (1173) Open Source (1020) Linux Kernel (90) cryptography (36) API (25) patch series (4) SHA-256 (2) Architecture Optimization (1)

댓글

댓글을 쓰기 위해서는 로그인을 해 주세요.