저는 CUDA 개발자입니다. 학부생에게 GPU에 AES를 구현하는 것을 돕고 있습니다. 이들은 암호에 대한 지식이 많지 않으므로 처음으로 작업하고 있습니다. 누군가가 대답 할 수 있다면 몇 가지 질문이 있습니다.CUDA를 사용하는 GPU의 고급 암호화 표준
어떻게 AES를 구현합니까? GPU에서 암호화하고 속도를 향상시키는 데 가장 적합한 데이터가 무엇이겠습니까? 우리가 CD를 암호화해야합니까? 또는 신용 카드 번호와 같은 중요한 데이터입니까? 즉, 데이터 소스는 무엇이되어야합니까?
GPU에 적합한 AES의 작동 모드는 무엇입니까?
학생들은 입력 비트 스트림 속도에 대해 질문을 받았는데, 누구도이 비트를 비추 었습니까? 왜냐하면 내가 생각했던 방식대로, 그것은 데이터 크기에 의존해야합니다. 그리고 그 비교는 GPU와 CPU 사이에서 datasize를 기반으로하여 도출 될 수 있습니다.
미리 감사드립니다.
AES는 16 바이트의 청크를 사용하지만 일반적으로 큰 것을 암호화 할 때 체인을 사용할 수 있는지 여부는 사용할 수 없습니다. GPU를 사용하면 병렬화하여 동시에 많은 덩어리를 스크램블하므로 PC에서 할 수없는 일이 있습니다. 그것을 할 수 있기 위해, 가장 쉬운 방법은 ECB에 붙는 것입니다. (각 16 바이트는 독립적으로 체인을 사용하지 않습니다.) – Bruce
피드백에 감사드립니다. 그래서 예를 들어 영화 나 DVD (Large one)를 사용할 수 있고 그것을 암호화하고 해독 할 수 있습니다. 데모 용 술. 충분히 좋을 까? – Bilal
ECB는 완전히 안전하지 않은 모드이며 암호문에 대한 수많은 정보가 누출되므로 절대로 사용해서는 안됩니다. 일반적으로 기밀 유지가 필요한 경우 CBC 모드로 충분합니다. 그러나 CBC는 병렬 처리 할 수 없습니다. 병렬 처리가 가능한 GCM 모드를 확인하고 인증 및 기밀을 제공합니다. – Darhuuk