반응형

Original

The `Golden Arches` of fast food chain McDonalds is more recognized worldwide than the religious cross of Christianity.

해석

패스트 푸드 체인 맥도날드의 '골든 아치'는 기독교의 십자가보다 전 세계적으로 더 잘 알려져 있다.

단어

- Golden Arches: 맥도날드의 상징. (명사)
- fast food chain: 패스트 푸드 체인. (명사)
- McDonalds: 맥도날드. (명사)
- recognized: 인정받다. (동사)
- worldwide: 전 세계적으로. (부사)
- religious: 종교의. (형용사)
- cross: 십자가. (명사)
- Christianity: 기독교. (명사)

반응형
반응형

 

RSA의 공개키와 개인키를 XML 형식으로 생성하는 예제이다.

 

 

using System.Security.Cryptography;

public void CreateRSAKey() 
{
    using (RSA rsa = RSA.Create())
    {
        // 개인 키 추출
        RSAParameters privateKeyParameters = rsa.ExportParameters(true);

        // 개인 키를 TEXT 형식으로 출력
        rsa.ImportParameters(privateKeyParameters);
        string privateKeyText = rsa.ToXmlString(true);
        Console.WriteLine("\n개인 키:\n" + privateKeyText);

        // 공개 키 추출
        RSAParameters publicKeyParameters = rsa.ExportParameters(false);

        // 공개 키를 TEXT 형식으로 출력
        rsa.ImportParameters(publicKeyParameters);
        string publicKeyText = rsa.ToXmlString(false);
        Console.WriteLine("공개 키:\n" + publicKeyText);

    }
}

 

생성한 공개키를 이용해 암호화 하는 예제

public void Encrypt(string text)
{
	RSACryptoServiceProvider rsa = new RSACryptoServiceProvider();
    rsa.FromXmlString(publicKey);
    
    byte[] utf = (new UTF8Encoding()).GetBytes(text);
    
    byte[] encrypt = rsa.Encrypt(utf, false);
    
    string result = Convert.ToBase64String(encrypt);
}

 

생성한 개인키를 이용해 복호화 하는 예제

public void Decrypt(string text)
{
	RSACryptoServiceProvider rsa = new RSACryptoServiceProvider();
    rsa.FromXmlString(privateKey);
    
    byte[] base64 = Convert.FromBase64String(text);
    
    byte[] decrypt = rsa.Decrypt(base64, false);
    
    string dec = (new UTF8Encoding()).GetString(decrypt, 0, decrypt.Length);
        
    string result = dec;
}

 

반응형

'Spadeworks > C#' 카테고리의 다른 글

gRPC DateTime C# 예제  (1) 2023.09.14
C# Convert TimeSpan to DateTime  (1) 2023.09.14
반응형

Bcrypt는 단방향 암호화 알고리즘이기 때문에 복호화가 불가능하다.

따라서 암호화 된 hash 값과 hash 값 끼리는 검증이 불가능하다.

오로지 평문과 hash 값만 비교 가능하다.

반응형

+ Recent posts