SQL Server가 옵션이고 기본 목표가 데이터 스누핑을 방지하는 것이라면 SQL Server의 XML 처리 및 내장 암호화 기능 (예 : 인증서, TDE 등)을 암호화합니다. 이렇게하면 설명하는 대부분의 수동 작업이 제거됩니다.
http://technet.microsoft.com/en-us/library/bb510663.aspx
데이터가 필요한 경우
전체 과정에서 암호화 할 (예를 들면, 어플리케이션의 메모리 공간에있는 경우) 또는 데이터가 사용자의 컴퓨터에 있으면 SQL 기반 암호화 못해 실용적 또는 충분하다. 코드의 우리는 노드를 암호화 할 수 있습니다 닷 넷 어셈블리를 사용
. (성능 문제 및 많은 암호화하고 메모를 해독하기 위해 작성해야합니다.
나는 이것이 인 것을 말하는 게 아니에요 당신이 충분한 정보를 제공하지 않았기 때문에 올바른 해결책은. 그러나, 나는 당신이 잘못된 가정하에 운영되고 있다고 생각합니다. .NET에서
암호화는 매우 강력하고 코드의 100 개 미만 라인을 수행 할 수 있습니다. 너 표준 암호화 알고리즘을 사용하거나 Windows 인증서 서비스와 통합 할 수 있습니다.
물론 성능에 영향이 있지만 최신 CPU는 암호화에 필요한 수학을 처리하는 훌륭한 작업을 수행합니다. 파일이 크지 않고 매초 수백 개의 파일을 처리하지 않는 한, 성능에 대한 염려는하지 않습니다.
궁극적으로 데이터가 사용자 시스템에있는 경우 가장 큰 문제는 키의 위치와 보안입니다.
Win app? 웹 앱? 어느 데브? ... – walther
그리고 암호 해독 키를 어디에 저장할 것인가? 사용자가 기본적으로 프로그램을 실행하고 있기 때문에 기본적으로 읽기 액세스 권한이 필요합니까? 데이터 액세스를 제어하기 위해 일종의 외부 서비스가 필요한 것 같습니다. –
무결성이나 보안이 걱정 되십니까? 어떤 수준에서 후자의 경우. 변경할 수없는 다른 권한 수준을 볼 수 없습니까? –