2010-07-08 3 views
5

SQL 서버에서 일부 비밀번호를 암호화하고 C# 앱에서 암호를 해독해야합니다.SQL 서버에서 데이터를 암호화하고 .net 앱에서 암호 해독하는 방법

분명히 나를 위해 필요한 암호를 해독하고이를 C# 응용 프로그램에 전달하는 SP를 만들 수 있지만 이것은 네트워크를 통해 일반 텍스트 암호를 보내는 것을 의미합니다.

그래서 암호를 해독하고 사용하는 방법을 알고있는 내 C# 응용 프로그램으로 전달할 수있는 암호 (암호 등을 사용하여)를 사용하여 SQL Server에서 암호를 암호화 할 수 있기를 바랍니다.

저는 이것이 가능해야합니다 (어쩌면 인증서를 사용하는 것).하지만 어디서부터 시작해야할지 모르겠습니다.

.net 4와 SQL Server 2008에 새로운 접근 방법이 있으면 사용할 수 있습니다.

미리 조언 해 주셔서 감사합니다.

+0

SQL 서버에 암호가 생성 되었습니까? – Oded

+0

음, abc123과 같은 암호를 만들었지 만 EncryptByPassPhrase를 사용하여 SQL Server에서 암호화하도록합니다. – HAdes

답변

3

.NET (2.0)에서 암호화/해독 어셈블리를 만들고 SQL Server에 배포 할 수 있습니까? 이것이 내가 데이터를 암호화/해독하는 동일한 알고리즘/메커니즘을 가질 수있는 유일한 방법입니다.

암호화/암호 해독을 사용하여 .NET 어셈블리를 만들고이를 SQL Server에 배포하고 거기에서 사용하여 데이터를 암호화하고 같은 어셈블리/동일한 .NET 코드를 사용하여 .NET 응용 프로그램의 데이터를 해독합니다.

+0

나쁜 제안이 아닙니다. 이것은 SQL 서버 암호화를 모두 배제하고 있지만 말입니다. 그럼 그 점이 무엇입니까? – HAdes

+0

@HAdes : SQL Server 암호화는 SQL Server 내에서 훌륭하게 작동합니다. 확실하지는 않지만 고유 한 암호화를 사용하여 SQL Server에서 암호화하고 SQL Server 외부에서 다른 방법으로 해독하는 방법은 없습니다. SQL Server 내에 있고 암호화 시스템을 사용하거나 직접 롤백해야합니다. –

0

이 기능은 코드에서 사용되며 서버에 배포되는 어셈블리입니다. 그러나 우리는 메모리 부족 문제에 부딪 쳤습니다. 이 서버는 24GB 메모리, 64 비트 OS 및 32 비트 SQL 서버가있는 듀얼 쿼드 코어 서버입니다. AWE가 활성화되면 sql의 프로세스가 우선 순위를 가지며 19GB의 메모리가 sql에 할당됩니다. 그것은 우리의 유일한 어셈블리이며 로그 파일에 수 많은 오류가 발생합니다. 나는 시스템을 확장하는 것을 좋아한다. 그러나 이것은 해킹처럼 보인다. 왜 우리는 하나 또는 다른 것을 사용합니까? 왜 모두?

3

절대 암호를 암호화하지 마십시오!

암호를 소금으로 처리하고 해시해야합니다. 시스템 보안과 관련하여 이것은 규칙 1입니다.

관련 문제