C'de yazdığım bir şifre programı

Başlatan mtilhan, 18 Ocak 2009 - 15:40:13

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

mtilhan

Adı: sifreci
Sürüm: 0.0.1
-Bu program kendi geliştirdiğim bir şifreleme ve şifrelediği metni çözme programıdır.
-Şu an için arayüzü yoktur.
-Çıkarttığınız klasöre girip orada F4 ile konsolu açınız ve
Kod:
./sifreci
komutu ile çalıştırabilirsiniz.
İndir
Lütfen deniyorsak yorumsuz bırakmayalım...
You're beatiful but you will never be mine.
Ash nazg durbatulûk, ash nazg gimbatul, ash nazg thrakatulûk agh burzum-ishi krimpatul.

heartsmagic

Üretilen uygulamalar olduğunu görmek sevindirici. Çalışmalarının devam arz etmesi dileğiyle @mtilhan, eline sağlık.

Şifre çözülürken son parçanın son rakamlarını birer arttırdığımda da şifreyi doğru çözüyor.
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?


Böylece yalan, dünyanın düzenine dönüştürülüyor.

mtilhan

15 artırsanda çözer :D
Madem bir program yazdık açıklayalım :D
int uretici(void)
{
clrscr();
printf("Sifrelemek istediginiz kelimeyi giriniz: ");scanf("%s",b);
for(i=0;i<strlen(b);i++)
{
a[i]=b[i];c[i]=a[i]<<4;printf("%i ",c[i]);
}
printf("\n");
return 0;
}
int cozucu(void)
{
clrscr();
unsigned int m;
printf("Sifre kac parcadan olusuyor? ");scanf("%u",&m);
for (i=1;i<=m;i++)
{
scanf("%u",&a[i]);
}
for (i=1;i<=m;i++)
{
c[i]=a[i]>>4;b[i]=c[i];printf("%c",b[i]);
}
printf("\n");
return 0;
}

Şimdi asıl şifreleme ve şifre çözme kısmı bu :)
Şifrelemede yapılan ne:
Kelimeyi bir dizgiye alıyoruz.Orada her harfi tamsayı cinsinden bir diziye at diyince her harfin ASCII kodunu aktarıyor.
sonra asıl vurucu kısım a<<4
Bunun anlamı a dizisinin i'ninci elemanının byte değerini 4 birim sola kaydır.
Bunu uzun uzun açıklamak isterdim ama kısaca formülü şu:
x<<y=x*(2^y) yani x carpi 2'nin y'ninci kuvveti.
Çözerken de tam tersi a>>4.
Buda
x>>y=x/(2^y) yani x bolu 2'nin y'ninci kuvvetidir.
Ancak burada şöyle bir durum var.
Bytleri kaydırarak yaptığından işlemi kalanları vermeden yapıyor.Örn:
7%3=1 ise yani 7'nin 3'e modu 1 ise program 7-1 yapıp işlemi yapıyor ;)
O yüzden böyle...
You're beatiful but you will never be mine.
Ash nazg durbatulûk, ash nazg gimbatul, ash nazg thrakatulûk agh burzum-ishi krimpatul.

heartsmagic

Kodlara bakmamıştım, sadece meraktan denediğimde gördüğüm bir durumdu. Hoş, kodların açıklanması da güzel oldu :)
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?


Böylece yalan, dünyanın düzenine dönüştürülüyor.

bytan

#4
Okulda c üzerine eğitime başladığımız zaman bizde hevesle uğraşırdık şifrelemelerle. Yine sizin gibi ufak kodlar yazardık. Çeşitli özelliklerinden dolayı XOR ile şifreler ve şifreyi açardık. Doğru şifreyi girmeden açmıyordu tabi xor sebebiyle. Zaten örnekleri çok internette.
Yeni denemelerinizi bekliyoruz. Kolay gelsin  ;)
Umut en büyük kötülüktür; işkenceyi uzatır. - F.N.


Bir şey ne ise odur, bu kadar. Öyleyse, iki şey arasında bağdaşıklık varsa, bu aralarında iletişim kuruyorlar demek değildir.
"... kavrayışını bilgi ile derinleştir ..."
PF @ ST

matafleur

Bu çocuk okur....


:P
((:

Şaka bir tarafa devam et hiç bozma.Sevdim azmini.Kolay gelsin :)

mtilhan

Alıntı yapılan: bytan - 18 Ocak 2009 - 18:43:02
Okulda c üzerine eğitime başladığımız zaman bizde hevesle uğraşırdık şifrelemelerle. Yine sizin gibi ufak kodlar yazardık. Çeşitli özelliklerinden dolayı XOR ile şifreler ve şifreyi açardık. Doğru şifreyi girmeden açmıyordu tabi xor sebebiyle. Zaten örnekleri çok internette.
Yeni denemelerinizi bekliyoruz. Kolay gelsin  ;)
Okulda derken siz üniversitede mi?
Eğer öyleyse söyleyeyim ben daha lise 1'deyim :D
@matafleur saol.
Allah izin verirse bu arada şu an bu programa eklentiler yapıyorum wikipedia'dan bulduğum bazı şifreleme yöntemlerinide ekleyeceğim...
You're beatiful but you will never be mine.
Ash nazg durbatulûk, ash nazg gimbatul, ash nazg thrakatulûk agh burzum-ishi krimpatul.

mtilhan

Alıntı yapılan: heartsmagic - 18 Ocak 2009 - 16:32:08
Kodlara bakmamıştım, sadece meraktan denediğimde gördüğüm bir durumdu. Hoş, kodların açıklanması da güzel oldu :)
Kodlar tar dosyasında vardı :)
Bu arada python kullanlara bu sözüm C'de kullanılan << ve >> ile yapılarak yapılan benimde bu programda kullandığım kaydırma pythonda da aynı C kodlarındaki gibi işe yarıyor.
You're beatiful but you will never be mine.
Ash nazg durbatulûk, ash nazg gimbatul, ash nazg thrakatulûk agh burzum-ishi krimpatul.

Gimp Uzmanı

Anlamasamda güzel birşey sanırım. Tebrikler. :D

mtilhan

Pythonda diziler(dizgi değil :) )i bi öğrensem birde matrisleri Python diline çevireceğim ama daha değil :)
You're beatiful but you will never be mine.
Ash nazg durbatulûk, ash nazg gimbatul, ash nazg thrakatulûk agh burzum-ishi krimpatul.

heartsmagic

Kodların olduğunu biliyorum ancak vakit yetersizliğinden bakmamıştım :)
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?


Böylece yalan, dünyanın düzenine dönüştürülüyor.

mtilhan

:) Benimde şimdi vaktim az neyse ben kaçar :)
You're beatiful but you will never be mine.
Ash nazg durbatulûk, ash nazg gimbatul, ash nazg thrakatulûk agh burzum-ishi krimpatul.