<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>C# / VB.NET &#8211; MD5 fonksiyonu(String To MD5) yazısına yapılan yorumlar</title>
	<atom:link href="http://www.ahmetkaymaz.com/wp-seo-link-holder_akaymaz.php/2007/02/26/c-vbnet-md5-fonksiyonustring-to-md5/feed/?404;http://www.ahmetkaymaz.com:80/2007/02/26/c-vbnet-md5-fonksiyonustring-to-md5/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.ahmetkaymaz.com/2007/02/26/c-vbnet-md5-fonksiyonustring-to-md5/</link>
	<description>SQL Server, C#, VB.NET, ASP.NET, AJAX ile ilgili örnek kitap ve ipuçları</description>
	<lastBuildDate>Fri, 03 Feb 2012 08:30:43 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>Murat Yurtdas tarafından</title>
		<link>http://www.ahmetkaymaz.com/2007/02/26/c-vbnet-md5-fonksiyonustring-to-md5/comment-page-1/#comment-17435</link>
		<dc:creator>Murat Yurtdas</dc:creator>
		<pubDate>Thu, 14 Jul 2011 08:04:02 +0000</pubDate>
		<guid isPermaLink="false">http://www.ahmetkaymaz.com/c-vbnet-md5-fonksiyonustring-to-md5/2007/02/26/#comment-17435</guid>
		<description>hocam cok teşekkürler gerçekten çok işime yaradı.</description>
		<content:encoded><![CDATA[<p>hocam cok teşekkürler gerçekten çok işime yaradı.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Ahmet Kaymaz tarafından</title>
		<link>http://www.ahmetkaymaz.com/2007/02/26/c-vbnet-md5-fonksiyonustring-to-md5/comment-page-1/#comment-17165</link>
		<dc:creator>Ahmet Kaymaz</dc:creator>
		<pubDate>Thu, 16 Sep 2010 18:37:06 +0000</pubDate>
		<guid isPermaLink="false">http://www.ahmetkaymaz.com/c-vbnet-md5-fonksiyonustring-to-md5/2007/02/26/#comment-17165</guid>
		<description>Çetin,

&quot;x2&quot; Hexadecimal sayıları string türünde göstermek için kullanılır.</description>
		<content:encoded><![CDATA[<p>Çetin,</p>
<p>&#8220;x2&#8243; Hexadecimal sayıları string türünde göstermek için kullanılır.</p>
]]></content:encoded>
	</item>
	<item>
		<title>çetin tarafından</title>
		<link>http://www.ahmetkaymaz.com/2007/02/26/c-vbnet-md5-fonksiyonustring-to-md5/comment-page-1/#comment-17164</link>
		<dc:creator>çetin</dc:creator>
		<pubDate>Thu, 16 Sep 2010 14:42:04 +0000</pubDate>
		<guid isPermaLink="false">http://www.ahmetkaymaz.com/c-vbnet-md5-fonksiyonustring-to-md5/2007/02/26/#comment-17164</guid>
		<description>oSb.Append(HashData[x].ToString(&quot;x2&quot;));

hocam burada neden x2 eklemesi yapıyoruz. eklesek ne olur eklemesek ne olur.</description>
		<content:encoded><![CDATA[<p>oSb.Append(HashData[x].ToString(&#8220;x2&#8243;));</p>
<p>hocam burada neden x2 eklemesi yapıyoruz. eklesek ne olur eklemesek ne olur.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Ahmet Kaymaz tarafından</title>
		<link>http://www.ahmetkaymaz.com/2007/02/26/c-vbnet-md5-fonksiyonustring-to-md5/comment-page-1/#comment-1075</link>
		<dc:creator>Ahmet Kaymaz</dc:creator>
		<pubDate>Thu, 29 Jan 2009 08:36:08 +0000</pubDate>
		<guid isPermaLink="false">http://www.ahmetkaymaz.com/c-vbnet-md5-fonksiyonustring-to-md5/2007/02/26/#comment-1075</guid>
		<description>Kodunuzu göremediğim için birşey diyemeyeceğim ama 
MD5 sınıfı &lt;i&gt;System.Security.Cryptography&lt;/i&gt; isim-uzayı altında bulunmaktadır. Bu isim-uzayını using veya imports projeye eklememiş olabilir misiniz.</description>
		<content:encoded><![CDATA[<p>Kodunuzu göremediğim için birşey diyemeyeceğim ama<br />
MD5 sınıfı <i>System.Security.Cryptography</i> isim-uzayı altında bulunmaktadır. Bu isim-uzayını using veya imports projeye eklememiş olabilir misiniz.</p>
]]></content:encoded>
	</item>
	<item>
		<title>chtsmt tarafından</title>
		<link>http://www.ahmetkaymaz.com/2007/02/26/c-vbnet-md5-fonksiyonustring-to-md5/comment-page-1/#comment-1071</link>
		<dc:creator>chtsmt</dc:creator>
		<pubDate>Wed, 28 Jan 2009 15:48:10 +0000</pubDate>
		<guid isPermaLink="false">http://www.ahmetkaymaz.com/c-vbnet-md5-fonksiyonustring-to-md5/2007/02/26/#comment-1071</guid>
		<description>ya bu md5 is not declare ditor nerden tanımlıcaz anlayamadım lütfen yardım edbilirmisiniz</description>
		<content:encoded><![CDATA[<p>ya bu md5 is not declare ditor nerden tanımlıcaz anlayamadım lütfen yardım edbilirmisiniz</p>
]]></content:encoded>
	</item>
	<item>
		<title>Ahmet Kaymaz tarafından</title>
		<link>http://www.ahmetkaymaz.com/2007/02/26/c-vbnet-md5-fonksiyonustring-to-md5/comment-page-1/#comment-237</link>
		<dc:creator>Ahmet Kaymaz</dc:creator>
		<pubDate>Thu, 14 Feb 2008 20:04:19 +0000</pubDate>
		<guid isPermaLink="false">http://www.ahmetkaymaz.com/c-vbnet-md5-fonksiyonustring-to-md5/2007/02/26/#comment-237</guid>
		<description>Sanırım daha akademik bir çalışmaya ihtiyacınız var. 
MD5 en basit haliyle uzunluğu ne olursa olsun parametre olarak aldığı girdiyi 128 bit uzunluğunda bir değer dönüştürür. MD5 girdiyi, 512 bitlik bloklara bölerek işlem yapar. Eğer girdi 512&#039;ye tam bölünemiyorsa ona göre sizin de bahsettiğiniz padding yani bit ekleme işlemi yapılır. A,B,C,D bu hash fonksiyonun başlangıç registerleridir. Her biri 32 bit olan bu değişkenler(state variables) 512 bitlik blokların işleme girmesi sonucu değer alırlar ve sonuçta yan yana konularak 4*32=128 bitlik bir çıktı elde edilir. F,G,H,I ise fonksiyon içerisindeki yardımcı fonksiyonlar (auxiliary functions) olarak düşünebilir. Bu fonksiyonlar her biri 32 bitlik olan 3 ifadeyi parametre olarak ve sonuçta bu ifadeleri mantıksal operatörlerden(and, or, not ve xor ) geçirir. Bu fonksiyonlar FF,GG,HH,II metodları tarafından çağrılır. Buradaki X, Y, Z başlangıç registerleri tarafından gönderilmiş bitleri temsil ediyor.
Bu 4 step, her 512 bitlik blok için 16 kez çağrılır ve sonuçta her blok için 4*16=64 işlem yapılmış olur. Bu işlemde bitlerin kaydırılması sözkonusudur.
FF[ABCD 0 7 1] FF[DABC 1 12 2] FF[CDAB 2 17 3] FF[BCDA 3 22 4] 
FF[ABCD 4 7 5] FF[DABC 5 12 6] FF[CDAB 6 17 7] FF[BCDA 7 22 8] 
FF[ABCD 8 7 9] FF[DABC 9 12 10] FF[CDAB 10 17 11] 
FF[BCDA 11 22 12] 
FF[ABCD 12 7 13] FF[DABC 13 12 14] FF[CDAB 14 17 15] 
FF[BCDA 15 22 16] 

Bu konuda ben de çok deneyimli değilim. Bu bilgilerle birlikte bir literatör taraması yapmanız daha doğru olacaktır. Bunun için de en uygun doküman http://www.faqs.org/rfcs/rfc1321.html adresidir olmazsa doğrudan bu algoritmayı çıkarmış kişiye mail atmanızdır: rivest@theory.lcs.mit.edu</description>
		<content:encoded><![CDATA[<p>Sanırım daha akademik bir çalışmaya ihtiyacınız var.<br />
MD5 en basit haliyle uzunluğu ne olursa olsun parametre olarak aldığı girdiyi 128 bit uzunluğunda bir değer dönüştürür. MD5 girdiyi, 512 bitlik bloklara bölerek işlem yapar. Eğer girdi 512&#8242;ye tam bölünemiyorsa ona göre sizin de bahsettiğiniz padding yani bit ekleme işlemi yapılır. A,B,C,D bu hash fonksiyonun başlangıç registerleridir. Her biri 32 bit olan bu değişkenler(state variables) 512 bitlik blokların işleme girmesi sonucu değer alırlar ve sonuçta yan yana konularak 4*32=128 bitlik bir çıktı elde edilir. F,G,H,I ise fonksiyon içerisindeki yardımcı fonksiyonlar (auxiliary functions) olarak düşünebilir. Bu fonksiyonlar her biri 32 bitlik olan 3 ifadeyi parametre olarak ve sonuçta bu ifadeleri mantıksal operatörlerden(and, or, not ve xor ) geçirir. Bu fonksiyonlar FF,GG,HH,II metodları tarafından çağrılır. Buradaki X, Y, Z başlangıç registerleri tarafından gönderilmiş bitleri temsil ediyor.<br />
Bu 4 step, her 512 bitlik blok için 16 kez çağrılır ve sonuçta her blok için 4*16=64 işlem yapılmış olur. Bu işlemde bitlerin kaydırılması sözkonusudur.<br />
FF[ABCD 0 7 1] FF[DABC 1 12 2] FF[CDAB 2 17 3] FF[BCDA 3 22 4]<br />
FF[ABCD 4 7 5] FF[DABC 5 12 6] FF[CDAB 6 17 7] FF[BCDA 7 22 8]<br />
FF[ABCD 8 7 9] FF[DABC 9 12 10] FF[CDAB 10 17 11]<br />
FF[BCDA 11 22 12]<br />
FF[ABCD 12 7 13] FF[DABC 13 12 14] FF[CDAB 14 17 15]<br />
FF[BCDA 15 22 16] </p>
<p>Bu konuda ben de çok deneyimli değilim. Bu bilgilerle birlikte bir literatör taraması yapmanız daha doğru olacaktır. Bunun için de en uygun doküman <a href="http://www.faqs.org/rfcs/rfc1321.html" rel="nofollow">http://www.faqs.org/rfcs/rfc1321.html</a> adresidir olmazsa doğrudan bu algoritmayı çıkarmış kişiye mail atmanızdır: <a href="mailto:rivest@theory.lcs.mit.edu">rivest@theory.lcs.mit.edu</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>Kenan DOGAN tarafından</title>
		<link>http://www.ahmetkaymaz.com/2007/02/26/c-vbnet-md5-fonksiyonustring-to-md5/comment-page-1/#comment-236</link>
		<dc:creator>Kenan DOGAN</dc:creator>
		<pubDate>Wed, 13 Feb 2008 11:53:32 +0000</pubDate>
		<guid isPermaLink="false">http://www.ahmetkaymaz.com/c-vbnet-md5-fonksiyonustring-to-md5/2007/02/26/#comment-236</guid>
		<description>Hocam ,
Rivest&#039;in makalesini inceliyorum zaten,
ama biraz karışık.
oncelikle hash yapacagımız yazıyı binary formata döndürmemiz gerkiyormu?
append nasıl oluyor.mesela 1000 bit olunca?
mesajı 32 lik bitleremi ayıracaz?
word A,B,C ve D ne oluyor?
F,G,H,I fonksiyonlarına giren X,Y,Z ne oluyor.
XvY nasıl oluyor? 
[abcd k s i] nasıl bir fonksiyon....

hocam md5 in nasıl işledigini anlayamadım.
kısa bir metin üstünde açıklarsanız süper oalcak.
***@***.com a yazarsanız daha super olacak.
kolay gelsin,
Saygılar,
Kenan DOGAN</description>
		<content:encoded><![CDATA[<p>Hocam ,<br />
Rivest&#8217;in makalesini inceliyorum zaten,<br />
ama biraz karışık.<br />
oncelikle hash yapacagımız yazıyı binary formata döndürmemiz gerkiyormu?<br />
append nasıl oluyor.mesela 1000 bit olunca?<br />
mesajı 32 lik bitleremi ayıracaz?<br />
word A,B,C ve D ne oluyor?<br />
F,G,H,I fonksiyonlarına giren X,Y,Z ne oluyor.<br />
XvY nasıl oluyor?<br />
[abcd k s i] nasıl bir fonksiyon&#8230;.</p>
<p>hocam md5 in nasıl işledigini anlayamadım.<br />
kısa bir metin üstünde açıklarsanız süper oalcak.<br />
***@***.com a yazarsanız daha super olacak.<br />
kolay gelsin,<br />
Saygılar,<br />
Kenan DOGAN</p>
]]></content:encoded>
	</item>
	<item>
		<title>Ahmet Kaymaz tarafından</title>
		<link>http://www.ahmetkaymaz.com/2007/02/26/c-vbnet-md5-fonksiyonustring-to-md5/comment-page-1/#comment-228</link>
		<dc:creator>Ahmet Kaymaz</dc:creator>
		<pubDate>Tue, 05 Feb 2008 18:57:05 +0000</pubDate>
		<guid isPermaLink="false">http://www.ahmetkaymaz.com/c-vbnet-md5-fonksiyonustring-to-md5/2007/02/26/#comment-228</guid>
		<description>Kenan bey,

mutlaka denk gelmişsinizdir. Bununla ilgili aşağıdaki linkleri inceleyebilirsiniz.

http://en.wikipedia.org/wiki/MD5
http://www.ietf.org/rfc/rfc1321.txt
http://www.secure-hash-algorithm-md5-sha-1.co.uk/

Tabi bu kaynaklar ne kadar açık bir dil kullanıyor, bilemiyorum.</description>
		<content:encoded><![CDATA[<p>Kenan bey,</p>
<p>mutlaka denk gelmişsinizdir. Bununla ilgili aşağıdaki linkleri inceleyebilirsiniz.</p>
<p><a href="http://en.wikipedia.org/wiki/MD5" rel="nofollow">http://en.wikipedia.org/wiki/MD5</a><br />
<a href="http://www.ietf.org/rfc/rfc1321.txt" rel="nofollow">http://www.ietf.org/rfc/rfc1321.txt</a><br />
<a href="http://www.secure-hash-algorithm-md5-sha-1.co.uk/" rel="nofollow">http://www.secure-hash-algorithm-md5-sha-1.co.uk/</a></p>
<p>Tabi bu kaynaklar ne kadar açık bir dil kullanıyor, bilemiyorum.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Kenan DOGAN tarafından</title>
		<link>http://www.ahmetkaymaz.com/2007/02/26/c-vbnet-md5-fonksiyonustring-to-md5/comment-page-1/#comment-225</link>
		<dc:creator>Kenan DOGAN</dc:creator>
		<pubDate>Tue, 05 Feb 2008 11:33:01 +0000</pubDate>
		<guid isPermaLink="false">http://www.ahmetkaymaz.com/c-vbnet-md5-fonksiyonustring-to-md5/2007/02/26/#comment-225</guid>
		<description>Hocam merhaba,
md5 in algoritmasını açık bir dille anlatan kaynak belirtmeniz mümkünmü?
teşekkürler.</description>
		<content:encoded><![CDATA[<p>Hocam merhaba,<br />
md5 in algoritmasını açık bir dille anlatan kaynak belirtmeniz mümkünmü?<br />
teşekkürler.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Ahmet Kaymaz tarafından</title>
		<link>http://www.ahmetkaymaz.com/2007/02/26/c-vbnet-md5-fonksiyonustring-to-md5/comment-page-1/#comment-184</link>
		<dc:creator>Ahmet Kaymaz</dc:creator>
		<pubDate>Mon, 03 Dec 2007 10:21:31 +0000</pubDate>
		<guid isPermaLink="false">http://www.ahmetkaymaz.com/c-vbnet-md5-fonksiyonustring-to-md5/2007/02/26/#comment-184</guid>
		<description>MD5 ile şifreleme yapmanın mantığı hiçbir şekilde o değerin okunmamasını sağlamaktır. Eğer hem şifreli dursun hem de istediğim zaman asıl halini okuyabileyim diyorsanız MD5&#039;i değil geri dönüşümü olan şifreleme algoritmalarını kullanabilirsiniz. Örneğin Base64 ile kolaylıkla Encode ve Decode yapabilirsiniz. Aşağıdaki kodları inceleyip kendinize uyarlayabilirsiniz. &lt;br&gt;&lt;b&gt;Encode()&lt;/b&gt;&lt;pre lang=&quot;csharp&quot;&gt;static public string EncodeTo64(string toEncode){
byte[] toEncodeAsBytes = System.Text.ASCIIEncoding.ASCII.GetBytes(toEncode);
string returnValue = System.Convert.ToBase64String(toEncodeAsBytes);
return returnValue;
}&lt;/pre&gt;&lt;br&gt;&lt;b&gt;Decode()&lt;/b&gt;&lt;pre lang=&quot;csharp&quot;&gt;static public string DecodeFrom64(string encodedData){
byte[] encodedDataAsBytes = System.Convert.FromBase64String(encodedData);
string returnValue = System.Text.ASCIIEncoding.ASCII.GetString(encodedDataAsBytes);
return returnValue;
}&lt;/pre&gt;&lt;br&gt;Bkz:&lt;i&gt;http://arcanecode.wordpress.com/2007/03/21/encoding-strings-to-base64-in-c/&lt;/i&gt;</description>
		<content:encoded><![CDATA[<p>MD5 ile şifreleme yapmanın mantığı hiçbir şekilde o değerin okunmamasını sağlamaktır. Eğer hem şifreli dursun hem de istediğim zaman asıl halini okuyabileyim diyorsanız MD5&#8242;i değil geri dönüşümü olan şifreleme algoritmalarını kullanabilirsiniz. Örneğin Base64 ile kolaylıkla Encode ve Decode yapabilirsiniz. Aşağıdaki kodları inceleyip kendinize uyarlayabilirsiniz. <br /><b>Encode()</b>
<pre lang="csharp">static public string EncodeTo64(string toEncode){
byte[] toEncodeAsBytes = System.Text.ASCIIEncoding.ASCII.GetBytes(toEncode);
string returnValue = System.Convert.ToBase64String(toEncodeAsBytes);
return returnValue;
}</pre>
<p><b>Decode()</b>
<pre lang="csharp">static public string DecodeFrom64(string encodedData){
byte[] encodedDataAsBytes = System.Convert.FromBase64String(encodedData);
string returnValue = System.Text.ASCIIEncoding.ASCII.GetString(encodedDataAsBytes);
return returnValue;
}</pre>
<p>Bkz:<i><a href="http://arcanecode.wordpress.com/2007/03/21/encoding-strings-to-base64-in-c/" rel="nofollow">http://arcanecode.wordpress.com/2007/03/21/encoding-strings-to-base64-in-c/</a></i></p>
]]></content:encoded>
	</item>
</channel>
</rss>

