Vim Kullanarak Dosyaları Hızlı Bir Şekilde Şifrelemek ve Şifresini çözmek

Çoğu Linux kullanıcısı vim’i vi’den gelen bir metin editörü olarak bilir. Fakat vim aynı zamanda metin dosyalarını şifrelemek için bir araç olarak da işlev görebilir. Bu yazıda bunun nasıl yapıldığını ve süreci nasıl tersine çevireceğimizi inceliyorum.

Bir Linux sisteminde, sistemde hesabı olan diğer kullanıcıların sahip olabileceği ayrıcalıklara bakılmaksızın gizli tutmak istediğiniz bir metin dosyanız olduğunda, şifrelemeye başvurabilirsiniz. Bunu yapmanın kolay bir yolu, vim düzenleyicide yerleşik olan bir özelliği kullanmaktır. Hatırlamanız veya kasanızda saklamanız gereken bir parola kağıdı kadar basit bir işlemdir.

Başlamak için, mysecret adında aşağıdaki gibi metni olan bir dosyamız olduğunu varsayalım:

$ head -3 mysecret
I feel the need to put my deepest darkest secret into a text file on my Linux
system. While this likely isn't common practice, I'm not sure that I can trust
anyone with it. But a penguin? That's a different story! So here goes ...

Şimdi, en karanlık sırrınızı diğer kullanıcılara göstermeden şifrelemek istiyoruz, bunun için -x (encryption) seçeneğiyle birlikte vim’i kullanıyoruz.

$ vim -x mysecret

Vim editörü sizden hemen bir şifreleme anahtarı isteyecektir. Anahtarı doğru girdiğinizin teyidi için iki kez girmeniz gerekecek. Siz yazarken parolanın görüntülenmeyeceğini unutmayın. Ekranda her karakter bir yıldız işareti olarak görüntülenecektir.

Enter encryption key: *********
Enter same key again: *********

Vim dosyanızı açtıktan sonra, yazılarınız normal görünür ve isterseniz derin karanlık sırrınıza ayrıntılar eklemeye veya sırlarınızı düzenlemeye devam edebilir veya basitçe dosyayı şifreli biçimde yazmaya devam edebilirsiniz.

Şifrelenmiş içeriği kaydetmek için, dosyayı normalde vim ile yaptığınız gibi kaydedin.

:wq

Dosyaya bakmaya çalışan biri muhtemelen şuna benzer bir yazı görecektir:

VimCrypt~036▒!y)K▒▒i▒▒▒▒▒{▒z▒▒▒D▒:▒▒7▒\▒蝇Xd▒#n▒▒▒ڎq4▒▒݋▒^9▒|▒▒▒+A▒]j▒▒▒a▒N▒▒
▒▒▒▒▒▒}▒▒&f▒▒A3▒Wt[▒T\:с▒أny▒*▒▒}▒▒▒▒▒"▒▒▒ڈ^▒C▒E▒W▒▒v▒pV▒_▒Cj͞.EA▒▒▒#▒ex▒:▒K▒▒`P
▒u▒ ▒▒yhK▒X▒▒(W▒s(RY▒A▒
                 ▒▒l9▒▒▒_▒▒▒▒▒I▒▒Lk▒      ▒k▒▒▒▒=▒5G▒▒▒t▒2Ӣ▒gF▒   3▒Iq▒C▒▒▒▒OZ[▒l▒_▒~▒▒z

Dosyanızı tekrar okumaya veya derin karanlık sırrınıza yeni yazılar eklemeye hazır olduğunuzda, vim komutunu tekrar kullanın ve istendiğinde şifreyi giriniz.

$ vim mysecret
Need encryption key for "mysecret"
Enter encryption key: *********

Şifreyi doğru girdikten sonra içerik yine düz metin olarak gözükecektir.

I feel the need to put my deepest darkest secret into a text file on my Linux
system. While this likely isn't common practice, I'm not sure that I can trust
anyone with it. But a penguin? That's a different story! So here goes ...

Vim oturumunuzu her zamanki gibi :wq ile sonlandırdıktan sonra dosya şifreli kalacaktır.

Bir noktada, derin karanlık sırrınızı başkalarıyla paylaşmaya hazırsanız, dosya şifrelemesini ilk başta yaptığımız gibi tersine çevirebilirsiniz. İlk önce bir vim -X komutu kullanın. Bu sefer büyük harfli X kullanımına dikkat edin:

$ vim -X mysecret
Need encryption key for "mysecret"
Enter encryption key: *********

Daha sonra orijinal metninizi göreceksiniz.

I feel the need to put my deepest darkest secret into a text file on my Linux
system. While this likely isn't common practice, I'm not sure that I can trust
anyone with it. But a penguin? That's a different story! So here goes ...

Ardından şunu girin: X, ancak şifreleme anahtarını tekrar girmeniz istendiğinde (iki kez), Enter tuşuna basmanız yeterlidir:

Enter encryption key:
Enter same key again:

Dosyaya tekrar yazmak için :wq kullanın. Bundan sonra dosyanız şifrelenmemiş haline geri dönecektir.

$ head -3 mysecret
I feel the need to put my deepest darkest secret into a text file on my Linux
system. While this likely isn't common practice, I'm not sure that I can trust
anyone with it. But a penguin? That's a different story! So here goes ...

Daha fazla seçenekler:

Dosyaları şifrelemek için başka birçok araç mevcuttur, ancak bu teknik, vim’i ve anahtarlarınızı hatırlamanız dışında başka bir şey gerektirmemektedir. Bir dosyanın vim tarafından şifrelenip şifrelenmediğini belirlemek için dosya komutunu çalıştırabilirsiniz. Aşağıdaki örnekte, bu komutun bir dosyanın ne zaman şifrelenip şifrelenmediğini size söylediğini görüyoruz.

$ file mysecret
mysecret: Vim encrypted file data
$ file mysecret
mysecret: UTF-8 Unicode text

Kaynak: https://www.networkworld.com/article/3604676/using-vim-to-quickly-encrypt-and-decrypt-files.html#tk.rss_all