2009-04-15 4 views
1

모바일 장치에서 개인 키를 보호 할 방법이 필요합니다..NET Compact Framework 또는 Windows Mobile에서 사용할 수있는 DPAPI와 같은 것은 무엇입니까?

"보안 코드 작성"장에서 "보안 데이터 보호"장에서 "Windows CE"를 안전한 환경에서 사용할 수 없다고 말합니다. 그러나이 책은 수년 전인 2003 년입니다.

아직도 그렇습니까? 그렇지 않다고 말해줘. 오늘 개인 키를 확보하는 방법이 있어야합니다.

답변

3

DPAPI는 Win32 함수 세트 CryptProtectDataCryptUnprotectData으로 구현됩니다. 이 기능들은 Windows CE 및 Windows Mobile 플랫폼에서 사용할 수 있습니다 (링크 참조). 지원 버전이 무엇인지 모릅니다.

DPAPI 용 .NET 래퍼는 System.Security.Cryptography 네임 스페이스 (System.Security.dll 어셈블리)의 ProtectedData 클래스입니다. 그러나 .NET Compact Framework에서는 아직 구현하지 않았으므로 .NET을 사용하는 경우 P/Invoke를 사용해야합니다.

0

표준 암호화 알고리즘을 사용할 때 어떤 문제가 있습니까?

+1

사실 나는 표준 암호화 알고리즘을 사용하고 있습니다. 개인 키가 있습니다.이 개인 키를 .NET Compact Framework 또는 Windows Mobile에 안전하게 저장할 수 있습니까? –

1

사용자가 장치에 액세스 할 수 있으면 100 % 안전하게 키를 저장할 수 없습니다. 막대를 올릴 수는 있지만 제거 할 수는 없습니다.

키에 대한 액세스 권한을 외부화해야합니다 (예 : 사용자가 입력 한 사용자 이름 및/또는 비밀번호를 사용하거나 다른 방법 (예 : 네트워크 연결을 통한 비대칭 암호화)을 통해 기기로 전송되었습니다. Windows Mobile 프로그래머를위한 보안이 권장하는 것은 무엇입니까?

장치에 키를 저장하는 방법은 리버스 엔지니어링 할 수 있습니다. 여기에는 CryptProtectData 및 CryptUnprotectData API 사용이 포함됩니다.