2010-01-15 2 views
0

드라이브에 이미지가 있습니다. 숫자 값을 추가하여 바이트를 암호화했습니다. 이제 어떻게 수정 된 파일을 쓰고 이전 파일을 바꿀 수 있습니까? 내가 거기에 붙어있어디스크에 수정 된 이미지 작성

private void EncryptFile() 
    {    
     OpenFileDialog dialog = new OpenFileDialog(); 
     dialog.Filter = "JPEG Files (*.jpeg)|*.jpeg|PNG Files (*.png)|*.png|JPG Files (*.jpg)|*.jpg|GIF Files (*.gif)|*.gif"; 
     dialog.InitialDirectory = @"C:\Users\Sergio\Desktop"; 
     dialog.Title = "Please select an image file to encrypt."; 
     if (dialog.ShowDialog() == DialogResult.OK) 
     { 
      byte[] ImageBytes = File.ReadAllBytes(dialog.FileName); 

      for (int i = 0; i < ImageBytes.Length; i++) 
      { 
       ImageBytes[i] = (byte)(ImageBytes[i] + 5); 
      }     
     }    
    } 

: [: P 난 그냥 일에 대한 느낌을 받고 있어요 때문에 매우 newbish]

여기 내 암호화 방법입니다. 나는 어떻게해야 하는지를 정말로 모른다. 기술적으로, for 루프를 수행 한 후에 바이트 [] ImageBytes 안에 수정 된 이미지가 있습니다. 이제 이미지와 정확히 같은 위치에 어떻게 쓸 수 있습니까?

와아! 부수적으로, dialog.FileName을 사용하여 파일을 올바르게 읽었습니까? 그 파일의 경로를 반환합니까?

+0

카이사르 암호는 무엇을 의미합니까? 그건 좀 쉬워. :-P –

+2

학습 아가씨! 배우기! xD 아니요,하지만 실제로 XOR 또는 다른 더 어려운 Cypher를 사용하는 단계입니다. 정말로 물건을 배웁니다. 이런 일은 절대로하지 마십시오. : D 플러스, 나는 Assassin 's Creed 2를 끝내고 Leonardo처럼 느껴지고 싶습니다. –

+1

XOR은 "더 단단한"암호입니까? 진심이야?! :-P 여기에서는 AES 구현을 고려하고 있다고 생각했는데 사람들은 .NET Framework에 내장 된 것을 사용하도록 말할 것입니다. 정말로, 당신이 암호 전문가가 아니라면 갈 수있는 유일한 방법입니다. :-P –

답변

5
File.WriteAllBytes(dialog.FileName, ImageBytes); 
관련 문제