Özellikler:
✔ AES-256 şifreleme
✔ Servis/kullanıcı adı/şifre saklama
✔ Şifreleri listeleme
✔ Dosya tabanlı veri depolama
Kullanım:
1. Visual Studio'da yeni Console App oluştur
2. Kodu yapıştır
3. `sifrelemeAnahtari123` yerine kendi anahtarınızı girin
Not: Gerçek kullanım için anahtar yönetimi ve kullanıcı girişi eklemelisiniz.
✔ AES-256 şifreleme
✔ Servis/kullanıcı adı/şifre saklama
✔ Şifreleri listeleme
✔ Dosya tabanlı veri depolama
Kullanım:
1. Visual Studio'da yeni Console App oluştur
2. Kodu yapıştır
3. `sifrelemeAnahtari123` yerine kendi anahtarınızı girin
Not: Gerçek kullanım için anahtar yönetimi ve kullanıcı girişi eklemelisiniz.
C#:
using System;
using System.IO;
using System.Security.Cryptography;
using System.Text;
namespace PasswordManager
{
class Program
{
static void Main(string[] args)
{
while (true)
{
Console.Clear();
Console.WriteLine("🔐 ŞİFRE YÖNETİCİSİ");
Console.WriteLine("1. Yeni Şifre Ekle");
Console.WriteLine("2. Şifreleri Listele");
Console.WriteLine("3. Çıkış");
Console.Write("Seçim: ");
switch (Console.ReadLine())
{
case "1":
AddPassword();
break;
case "2":
ListPasswords();
break;
case "3":
return;
default:
Console.WriteLine("Geçersiz seçim!");
Console.ReadKey();
break;
}
}
}
static void AddPassword()
{
Console.Write("Servis Adı: ");
string service = Console.ReadLine();
Console.Write("Kullanıcı Adı: ");
string username = Console.ReadLine();
Console.Write("Şifre: ");
string password = Console.ReadLine();
string encrypted = Encrypt($"{service}|{username}|{password}", "sifrelemeAnahtari123");
File.AppendAllText("passwords.dat", encrypted + Environment.NewLine);
Console.WriteLine("✔️ Şifre kaydedildi!");
Console.ReadKey();
}
static void ListPasswords()
{
if (!File.Exists("passwords.dat"))
{
Console.WriteLine("Kayıtlı şifre yok!");
Console.ReadKey();
return;
}
Console.WriteLine("\n📋 KAYITLI ŞİFRELER");
Console.WriteLine("-----------------------");
foreach (string line in File.ReadAllLines("passwords.dat"))
{
string decrypted = Decrypt(line, "sifrelemeAnahtari123");
string[] parts = decrypted.Split('|');
Console.WriteLine($"🔹 {parts[0]}");
Console.WriteLine($" 👤 Kullanıcı: {parts[1]}");
Console.WriteLine($" 🔑 Şifre: {parts[2]}");
Console.WriteLine("-----------------------");
}
Console.ReadKey();
}
static string Encrypt(string plainText, string key)
{
byte[] iv = new byte[16];
byte[] array;
using (Aes aes = Aes.Create())
{
aes.Key = Encoding.UTF8.GetBytes(key);
aes.IV = iv;
ICryptoTransform encryptor = aes.CreateEncryptor(aes.Key, aes.IV);
using (MemoryStream memoryStream = new MemoryStream())
{
using (CryptoStream cryptoStream = new CryptoStream(memoryStream, encryptor, CryptoStreamMode.Write))
{
using (StreamWriter streamWriter = new StreamWriter(cryptoStream))
{
streamWriter.Write(plainText);
}
array = memoryStream.ToArray();
}
}
}
return Convert.ToBase64String(array);
}
static string Decrypt(string cipherText, string key)
{
byte[] iv = new byte[16];
byte[] buffer = Convert.FromBase64String(cipherText);
using (Aes aes = Aes.Create())
{
aes.Key = Encoding.UTF8.GetBytes(key);
aes.IV = iv;
ICryptoTransform decryptor = aes.CreateDecryptor(aes.Key, aes.IV);
using (MemoryStream memoryStream = new MemoryStream(buffer))
{
using (CryptoStream cryptoStream = new CryptoStream(memoryStream, decryptor, CryptoStreamMode.Read))
{
using (StreamReader streamReader = new StreamReader(cryptoStream))
{
return streamReader.ReadToEnd();
}
}
}
}
}
}
}