<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="id">
	<id>https://wiki.unissula.ac.id/index.php?action=history&amp;feed=atom&amp;title=MD5</id>
	<title>MD5 - Riwayat revisi</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.unissula.ac.id/index.php?action=history&amp;feed=atom&amp;title=MD5"/>
	<link rel="alternate" type="text/html" href="https://wiki.unissula.ac.id/index.php?title=MD5&amp;action=history"/>
	<updated>2026-09-15T23:14:20Z</updated>
	<subtitle>Riwayat revisi halaman ini di wiki</subtitle>
	<generator>MediaWiki 1.46.0</generator>
	<entry>
		<id>https://wiki.unissula.ac.id/index.php?title=MD5&amp;diff=6524&amp;oldid=prev</id>
		<title>Maintenance script: Presentation V4: sitasi, referensi, Math, Wikimedia Commons, dan atribusi</title>
		<link rel="alternate" type="text/html" href="https://wiki.unissula.ac.id/index.php?title=MD5&amp;diff=6524&amp;oldid=prev"/>
		<updated>2026-08-24T13:56:37Z</updated>

		<summary type="html">&lt;p&gt;Presentation V4: sitasi, referensi, Math, Wikimedia Commons, dan atribusi&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw-interface=&quot;&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;id&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Revisi sebelumnya&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revisi per 24 Agustus 2026 13.56&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l35&quot;&gt;Baris 35:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Baris 35:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Algoritma ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Algoritma ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;sub&amp;gt;&amp;#039;&amp;#039;s&amp;#039;&amp;#039;&amp;lt;/sub&amp;gt; menunjukkan perputaran bit kiri oleh &amp;#039;&amp;#039;s&amp;#039;&amp;#039;; &amp;#039;&amp;#039;s&amp;#039;&amp;#039; bervariasi untuk tiap-tiap operasi.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;sub&amp;gt;&amp;#039;&amp;#039;s&amp;#039;&amp;#039;&amp;lt;/sub&amp;gt; menunjukkan perputaran bit kiri oleh &amp;#039;&amp;#039;s&amp;#039;&amp;#039;; &amp;#039;&amp;#039;s&amp;#039;&amp;#039; bervariasi untuk tiap-tiap operasi.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l147&quot;&gt;Baris 147:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Baris 145:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;*  [http://userpages.umbc.edu/~mabzug1/cs/md5/md5.html situs tentang MD5]  — berisi tentang berbagai macam implementasi pada berbagai bahasa pemrogaman&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;*  [http://userpages.umbc.edu/~mabzug1/cs/md5/md5.html situs tentang MD5]  — berisi tentang berbagai macam implementasi pada berbagai bahasa pemrogaman&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;*  [http://pajhome.org.uk/crypt/md5/ Paj&amp;#039;s Home: Cryptography] ([[JavaScript|Javascript]] MD4 dan MD5, plus SHA-1)&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;*  [http://pajhome.org.uk/crypt/md5/ Paj&amp;#039;s Home: Cryptography] ([[JavaScript|Javascript]] MD4 dan MD5, plus SHA-1)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;*  [http://www.cs.eku.edu/faculty/styer/460/Encrypt/JS-MD5.html MD5 kalkulator dengan Javascript memberikan nilai secara langsung dari kalkulasi]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;*  [http://www.cs.eku.edu/faculty/styer/460/Encrypt/JS-MD5.html MD5 kalkulator dengan Javascript memberikan nilai secara langsung dari kalkulasi]  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;*  [http://www.jonelo.de/java/jacksum/index.html Jacksum] (Sebuah program dengan berbagai macam fungsi verifikasi pesan)&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;*  [http://www.jonelo.de/java/jacksum/index.html Jacksum] (Sebuah program dengan berbagai macam fungsi verifikasi pesan)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [http://nebotov.ru/p/md5.html Pascal/Delphi realization]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [http://nebotov.ru/p/md5.html Pascal/Delphi realization]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l154&quot;&gt;Baris 154:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Baris 152:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Kerusakan ===&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Kerusakan ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;*  [http://cryptography.hyperlink.cz/MD5_collisions.html Kerusakan cepat yang ditemukan oleh V. Klima]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;*  [http://cryptography.hyperlink.cz/MD5_collisions.html Kerusakan cepat yang ditemukan oleh V. Klima]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Sumber dan atribusi ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Sumber dan atribusi ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Konten artikel ini diadaptasi dari [https://id.wikipedia.org/w/index.php?title=MD5&amp;amp;oldid=29342462 Wikipedia bahasa Indonesia], revisi 29342462 (2026-06-13T18:02:00Z), yang tersedia berdasarkan lisensi Creative Commons Atribusi-BerbagiSerupa (CC BY-SA). Mohon gunakan konten ini secara bijak serta sesuai dengan ketentuan lisensi yang berlaku.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Konten artikel ini diadaptasi dari [https://id.wikipedia.org/w/index.php?title=MD5&amp;amp;oldid=29342462 Wikipedia bahasa Indonesia], revisi 29342462 (2026-06-13T18:02:00Z), yang tersedia berdasarkan lisensi Creative Commons Atribusi-BerbagiSerupa (CC BY-SA). Mohon gunakan konten ini secara bijak serta sesuai dengan ketentuan lisensi yang berlaku.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;!-- WIKI_UNISSULA_PRESENTATION_V4 --&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
	<entry>
		<id>https://wiki.unissula.ac.id/index.php?title=MD5&amp;diff=6124&amp;oldid=prev</id>
		<title>Maintenance script: Impor teks terkontrol dari Wikipedia bahasa Indonesia; revisi 29342462; atribusi sumber disertakan.</title>
		<link rel="alternate" type="text/html" href="https://wiki.unissula.ac.id/index.php?title=MD5&amp;diff=6124&amp;oldid=prev"/>
		<updated>2026-08-24T13:17:13Z</updated>

		<summary type="html">&lt;p&gt;Impor teks terkontrol dari Wikipedia bahasa Indonesia; revisi 29342462; atribusi sumber disertakan.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Halaman baru&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Dalam [[kriptografi]], &amp;#039;&amp;#039;&amp;#039;MD5&amp;#039;&amp;#039;&amp;#039; (&amp;#039;&amp;#039;Message-Digest algorithm 5&amp;#039;&amp;#039;) adalah [[fungsi hash kriptografik]] yang digunakan secara luas dengan &amp;#039;&amp;#039;hash value&amp;#039;&amp;#039; 128-bit. Pada standart Internet (RFC 1321), MD5 telah dimanfaatkan secara bermacam-macam pada aplikasi keamanan, dan MD5 juga umum digunakan untuk melakukan pengujian integritas sebuah [[berkas]].&lt;br /&gt;
&lt;br /&gt;
MD5 di desain oleh [[Ronald Rivest]] pada tahun [[1991]] untuk menggantikan &amp;#039;&amp;#039;hash function&amp;#039;&amp;#039; sebelumnya, [[MD4]]. Pada tahun [[1996]], sebuah kecacatan ditemukan dalam desainnya, walau bukan kelemahan fatal, pengguna kriptografi mulai menganjurkan menggunakan [[algoritme]] lain, seperti [[SHA-1]] (klaim terbaru menyatakan bahwa SHA-1 juga cacat). Pada tahun [[2004]], kecacatan-kecacatan yang lebih serius ditemukan menyebabkan penggunaan algoritma tersebut dalam tujuan untuk keamanan jadi makin dipertanyakan.&lt;br /&gt;
&lt;br /&gt;
== Sejarah dan kriptoanalisis ==&lt;br /&gt;
MD5 adalah salah satu dari serangkaian [[algoritma]] &amp;#039;&amp;#039;[[message digest]]&amp;#039;&amp;#039; yang didesain oleh Profesor [[Ronald Rivest]] dari [[Massachusetts Institute of Technology|MIT]] (Rivest, 1994). Saat kerja analitik menunjukkan bahwa pendahulu MD5 — [[MD4]] — mulai tidak aman, MD5 kemudian didesain pada tahun [[1991]] sebagai pengganti dari MD4 (kelemahan MD4 ditemukan oleh [[Hans Dobbertin]]).&lt;br /&gt;
&lt;br /&gt;
Pada tahun [[1993]], [[den Boer]] dan [[Bosselaers]] memberikan awal, bahkan terbatas, hasil dari penemuan &amp;#039;&amp;#039;pseudo-collision&amp;#039;&amp;#039; dari fungsi [[kompresi]] MD5. Dua [[vektor inisialisasi]] berbeda &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; dan &amp;lt;math&amp;gt;J&amp;lt;/math&amp;gt; dengan beda 4-bit di antara keduanya.&lt;br /&gt;
:&amp;lt;math&amp;gt;MD5compress(I,X) = MD5compress(J,X)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pada tahun [[1996]] Dobbertin mengumumkan sebuah kerusakan pada fungsi kompresi MD5. Dikarenakan hal ini bukanlah serangan terhadap fungsi &amp;#039;&amp;#039;hash&amp;#039;&amp;#039; MD5 sepenuhnya, hal ini menyebabkan para pengguna kriptografi menganjurkan pengganti seperti [[WHIRLPOOL]], [[SHA-1]] atau [[RIPEMD-160]].&lt;br /&gt;
&lt;br /&gt;
Ukuran dari &amp;#039;&amp;#039;hash&amp;#039;&amp;#039; — 128-bit — cukup kecil untuk terjadinya serangan &amp;#039;&amp;#039;[[brute force]] [[birthday attack]]&amp;#039;&amp;#039;. [[MD5CRK]] adalah proyek distribusi mulai Maret [[2004]] dengan tujuan untuk menunjukka kelemahan dari MD5 dengan menemukan kerusakan kompresi menggunakan &amp;#039;&amp;#039;brute force attack&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
Bagaimanapun juga, MD5CRK berhenti pada tanggal [[17 Agustus]] [[2004]], saat [[kerusakan &amp;#039;&amp;#039;hash&amp;#039;&amp;#039;]] pada MD5 diumumkan oleh [[Xiaoyun Wang]], [[Dengguo Feng]], [[Xuejia Lai]] dan [[Hongbo Yu]] [http://eprint.iacr.org/2004/199.pdf][http://eprint.iacr.org/2004/264.pdf]. Serangan analitik mereka dikabarkan hanya memerlukan satu jam dengan menggunakan [[IBM P690]] cluster.&lt;br /&gt;
&lt;br /&gt;
Pada tanggal [[1 Maret]] [[2005]], [[Arjen Lenstra]], Xiaoyun Wang, and [[Benne de Weger]] mendemontrasikan [http://eprint.iacr.org/2005/067] kunstruksi dari dua buah sertifikat [[X.509]] dengan &amp;#039;&amp;#039;[[Public Key Infrastructure|public key]]&amp;#039;&amp;#039; yang berbeda dan &amp;#039;&amp;#039;hash&amp;#039;&amp;#039; MD5 yang sama, hasil dari demontrasi menunjukkan adanya kerusakan. Konstruksi tersebut melibatkan &amp;#039;&amp;#039;private key&amp;#039;&amp;#039; untuk kedua &amp;#039;&amp;#039;public key&amp;#039;&amp;#039; tersebut. Dan beberapa hari setelahnya, [[Vlastimil Klima]] menjabarkan [http://eprint.iacr.org/2005/075] dan mengembangkan algortima, mampu membuat kerusakan Md5 dalam beberapa jam dengan menggunakan sebuah komputer [[notebook]]. Hal ini menyebabkan MD5 tidak bebas dari kerusakan.&lt;br /&gt;
&lt;br /&gt;
Dikarenakan MD5 hanya menggunakan satu langkah pada data, jika dua buah awalan dengan &amp;#039;&amp;#039;hash&amp;#039;&amp;#039; yang sama dapat dibangun, sebuah akhiran yang umum dapat ditambahkan pada keduanya untuk membuat kerusakan lebih masuk akal. Dan dikarenakan teknik penemuan kerusakan mengizinkan pendahuluan kondisi &amp;#039;&amp;#039;hash&amp;#039;&amp;#039; menjadi arbitari tertentu, sebuah kerusakan dapat ditemukan dengan awalan apapun. Proses tersebut memerlukan pembangkitan dua buah berkas perusak sebagai berkas templat, dengan menggunakan blok 128-byte dari tatanan data pada 64-byte batasan, berkas-berkas tersebut dapat mengubah dengan bebas dengan menggunakan algoritma penemuan kerusakan.&lt;br /&gt;
&lt;br /&gt;
== Efek nyata dari kriptoanalisis ==&lt;br /&gt;
Saat ini dapat diketahui, dengan beberapa jam kerja, bagaimana proses pembangkitan kerusakan MD5. Yaitu dengan membangkitkan dua byte &amp;#039;&amp;#039;string&amp;#039;&amp;#039; dengan &amp;#039;&amp;#039;hash&amp;#039;&amp;#039; yang sama. Dikarenakan terdapat bilangan yang terbatas pada keluaran MD5 (2&amp;lt;sup&amp;gt;128&amp;lt;/sup&amp;gt;), tetapi terdapat bilangan yang tak terbatas sebagai masukannya, hal ini harus dipahami sebelum kerusakan dapat ditimbulkan, tetapi hal ini telah diyakini benar bahwa menemukannya adalah hal yang sulit.&lt;br /&gt;
&lt;br /&gt;
Sebagai hasilnya bahwa &amp;#039;&amp;#039;hash&amp;#039;&amp;#039; MD5 dari informasi tertentu tidak dapat lagi mengenalinya secara berbeda. Jika ditunjukkan informasi dari sebuah &amp;#039;&amp;#039;public key&amp;#039;&amp;#039;, &amp;#039;&amp;#039;hash&amp;#039;&amp;#039; MD5 tidak mengenalinya secara berbeda jika terdapat &amp;#039;&amp;#039;public key&amp;#039;&amp;#039; selanjutnya yang mempunyai &amp;#039;&amp;#039;hash&amp;#039;&amp;#039; MD5 yang sama.&lt;br /&gt;
&lt;br /&gt;
Bagaimanapun juga, penyerangan tersebut memerlukan kemampuan untuk memilih kedua pesan kerusakan. Kedua pesan tersebut tidak dengan mudah untuk memberikan serangan &amp;#039;&amp;#039;[[preimage]]&amp;#039;&amp;#039;, menemukan pesan dengan &amp;#039;&amp;#039;hash&amp;#039;&amp;#039; MD5 yang sudah ditentukan, ataupun &amp;#039;&amp;#039;serangan preimage kedua&amp;#039;&amp;#039;, menemukan pesan dengan &amp;#039;&amp;#039;hash&amp;#039;&amp;#039; MD5 yang sama sebagai pesan yang diinginkan.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;Hash&amp;#039;&amp;#039; MD5 lama, yang dibuat sebelum serangan-serangan tersebut diungkap, masih dinilai aman untuk saat ini. Khususnya pada &amp;#039;&amp;#039;[[digital signature]]&amp;#039;&amp;#039; lama masih dianggap layak pakai.&lt;br /&gt;
Seorang pengguna boleh saja tidak ingin membangkitkan atau memercayai &amp;#039;&amp;#039;signature&amp;#039;&amp;#039; baru menggunakan MD5 jika masih ada kemungkinan kecil pada teks (kerusakan dilakukan dengan melibatkan pelompatan beberapa bit pada bagian 128-byte pada masukan &amp;#039;&amp;#039;hash&amp;#039;&amp;#039;) akan memberikan perubahan yang berarti.&lt;br /&gt;
&lt;br /&gt;
Penjaminan ini berdasar pada posisi saat ini dari kriptoanalisis. Situasi bisa saja berubah secara tiba-tiba, tetapi menemukan kerusakan dengan beberapa data yang belum-ada adalah masalah yang lebih susah lagi, dan akan selalu butuh waktu untuk terjadinya sebuah transisi.&lt;br /&gt;
&lt;br /&gt;
== Pengujian Integritas ==&lt;br /&gt;
Ringkasan MD5 digunakan secara luas dalam dunia [[perangkat lunak]] untuk menyediakan semacam jaminan bahwa berkas yang diambil (&amp;#039;&amp;#039;[[download]]&amp;#039;&amp;#039;) belum terdapat perubahan. Seorang pengguna dapat membandingkan MD5 sum yang dipublikasikan dengan &amp;#039;&amp;#039;[[checksum]]&amp;#039;&amp;#039; dari berkas yang diambil. Dengan asumsi bahwa &amp;#039;&amp;#039;checksum&amp;#039;&amp;#039; yang dipublikasikan dapat dipercaya akan keasliannya, seorang pengguna dapat secara yakin bahwa berkas tersebut adalah berkas yang sama dengan berkas yang dirilis oleh para developer, jaminan perlindungan dari &amp;#039;&amp;#039;[[Trojan Horse]]&amp;#039;&amp;#039; dan [[virus komputer]] yang ditambahkan pada perangkat lunak. Bagaimanapun juga, sering kali kasus yangterjadi bahwa &amp;#039;&amp;#039;checksum&amp;#039;&amp;#039; yang dipublikasikan tidak dapat dipercaya (sebagai contoh, &amp;#039;&amp;#039;checksum&amp;#039;&amp;#039; didapat dari channel atau lokasi yang sama dengan tempat mengambil berkas), dalam hal ini MD5 hanya mampu melakukan &amp;#039;&amp;#039;error-checking&amp;#039;&amp;#039;. MD5 akan mengenali berkas yang didownload tidak sempurna, cacat atau tidak lengkap.&lt;br /&gt;
&lt;br /&gt;
== Algoritma ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sub&amp;gt;&amp;#039;&amp;#039;s&amp;#039;&amp;#039;&amp;lt;/sub&amp;gt; menunjukkan perputaran bit kiri oleh &amp;#039;&amp;#039;s&amp;#039;&amp;#039;; &amp;#039;&amp;#039;s&amp;#039;&amp;#039; bervariasi untuk tiap-tiap operasi.&lt;br /&gt;
&lt;br /&gt;
menunjukan tambahan modulo 2&amp;lt;sup&amp;gt;32&amp;lt;/sup&amp;gt;.&lt;br /&gt;
MD5 memproses variasi panjang pesan kedalam keluaran 128-bit dengan panjang yang tetap. Pesan masukan dipecah menjadi dua gumpalan blok 512-bit; Pesan ditata sehingga panjang pesan dapat dibagi 512. Penataan bekerja sebagai berikut: bit tunggal pertama, 1, diletakkan pada akhir pedan. Proses ini diikuti dengan serangkaian nol (0) yang diperlukan agar panjang pesan lebih dari 64-bit dan kurang dari kelipatan 512. Bit-bit sisa diisi dengan 64-bit integer untuk menunjukkan panjang pesan yang asli. Sebuah pesan selalu ditata setidaknya dengan 1-bit tunggal, seperti jika panjang pesan adalah kelipatan 512 dikurangi 64-bit untuk informasi panjang (panjang mod(512) = 448), sebuah blok baru dari 512-bit ditambahkan dengan 1-bit diikuti dengan 447 bit-bit nol (0) diikuti dengan panjang 64-bit.&lt;br /&gt;
&lt;br /&gt;
Algoritma MD5 yang utama beroperasi pada kondisi 128-bit, dibagi menjadi empat &amp;#039;&amp;#039;[[word]]&amp;#039;&amp;#039; 32-bit, menunjukkan &amp;#039;&amp;#039;A&amp;#039;&amp;#039;, &amp;#039;&amp;#039;B&amp;#039;&amp;#039;, &amp;#039;&amp;#039;C&amp;#039;&amp;#039; dan &amp;#039;&amp;#039;D&amp;#039;&amp;#039;. Operasi tersebut di inisialisasi dijaga untuk tetap konstan. Algoritma utama kemudian beroperasi pada masing-masing blok pesan 512-bit, masing-masing blok melakukan pengubahan terhadap kondisi.Pemrosesan blok pesan terdiri atas empat tahap, batasan &amp;#039;&amp;#039;putaran&amp;#039;&amp;#039;; tiap putasan membuat 16 operasi serupa berdasar pada fungsi non-linear &amp;#039;&amp;#039;F&amp;#039;&amp;#039;, tambahan modular, dan rotasi ke kiri. Gambar satu mengilustrasikan satu operasi dalam putaran.&lt;br /&gt;
Ada empat macam kemungkinan fungsi &amp;#039;&amp;#039;F&amp;#039;&amp;#039;, berbeda dari yang digunakan pada tiap-tiap putaran:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;F(X,Y,Z) = (X\wedge{Y}) \vee (\neg{X} \wedge{Z})&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;G(X,Y,Z) = (X\wedge{Z}) \vee (Y \wedge \neg{Z})&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;H(X,Y,Z) = X \oplus Y \oplus Z&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;I(X,Y,Z) = Y \oplus (X \vee \neg{Z})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\oplus, \wedge, \vee, \neg&amp;lt;/math&amp;gt; menunjukkan operasi logikan XOR, AND, OR dan NOT.&lt;br /&gt;
&lt;br /&gt;
== &amp;#039;&amp;#039;Pseudocode&amp;#039;&amp;#039; ==&lt;br /&gt;
&amp;#039;&amp;#039;[[Pseudocode]]&amp;#039;&amp;#039; pada algoritma MD5 adalah sebagai berikut.&lt;br /&gt;
&lt;br /&gt;
 //&amp;#039;&amp;#039;Catatan: Seluruh variable pada unsigned integer 32-bit dan dan wrap modulo 2^32 saat melakukan perhitungan&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
 //&amp;#039;&amp;#039;Mendefinisikan r sebagai berikut&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;var&amp;#039;&amp;#039;&amp;#039; &amp;#039;&amp;#039;int&amp;#039;&amp;#039;[64] r, k&lt;br /&gt;
 r[ 0..15]:= {7, 12, 17, 22,  7, 12, 17, 22,  7, 12, 17, 22,  7, 12, 17, 22}&lt;br /&gt;
 r[16..31]:= {5,  9, 14, 20,  5,  9, 14, 20,  5,  9, 14, 20,  5,  9, 14, 20}&lt;br /&gt;
 r[32..47]:= {4, 11, 16, 23,  4, 11, 16, 23,  4, 11, 16, 23,  4, 11, 16, 23}&lt;br /&gt;
 r[48..63]:= {6, 10, 15, 21,  6, 10, 15, 21,  6, 10, 15, 21,  6, 10, 15, 21}&lt;br /&gt;
&lt;br /&gt;
 //&amp;#039;&amp;#039;Menggunakan bagian fraksional biner dari integral sinus sebagai konstanta:&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;for&amp;#039;&amp;#039;&amp;#039; i &amp;#039;&amp;#039;&amp;#039;from&amp;#039;&amp;#039;&amp;#039; 0 &amp;#039;&amp;#039;&amp;#039;to&amp;#039;&amp;#039;&amp;#039; 63&lt;br /&gt;
     k[i]:= floor(abs(sin(i + 1)) × 2^32)&lt;br /&gt;
&lt;br /&gt;
 //&amp;#039;&amp;#039;Inisialisasi variabel:&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;var&amp;#039;&amp;#039;&amp;#039; &amp;#039;&amp;#039;int&amp;#039;&amp;#039; h0:= 0x67452301&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;var&amp;#039;&amp;#039;&amp;#039; &amp;#039;&amp;#039;int&amp;#039;&amp;#039; h1:= 0xEFCDAB89&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;var&amp;#039;&amp;#039;&amp;#039; &amp;#039;&amp;#039;int&amp;#039;&amp;#039; h2:= 0x98BADCFE&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;var&amp;#039;&amp;#039;&amp;#039; &amp;#039;&amp;#039;int&amp;#039;&amp;#039; h3:= 0x10325476&lt;br /&gt;
&lt;br /&gt;
 //&amp;#039;&amp;#039;Pemrosesan awal:&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;append&amp;#039;&amp;#039;&amp;#039; &amp;quot;1&amp;quot; bit &amp;#039;&amp;#039;&amp;#039;to&amp;#039;&amp;#039;&amp;#039; message&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;append&amp;#039;&amp;#039;&amp;#039; &amp;quot;0&amp;quot; bits &amp;#039;&amp;#039;&amp;#039;until&amp;#039;&amp;#039;&amp;#039; message length in bits ≡ 448 (mod 512)&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;append&amp;#039;&amp;#039;&amp;#039; bit length of message &amp;#039;&amp;#039;&amp;#039;as&amp;#039;&amp;#039;&amp;#039; &amp;#039;&amp;#039;64-bit little-endian integer&amp;#039;&amp;#039; &amp;#039;&amp;#039;&amp;#039;to&amp;#039;&amp;#039;&amp;#039; message&lt;br /&gt;
&lt;br /&gt;
 //&amp;#039;&amp;#039;Pengolahan pesan paada kondisi gumpalan 512-bit:&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;for each&amp;#039;&amp;#039;&amp;#039; &amp;#039;&amp;#039;512-bit&amp;#039;&amp;#039; chunk &amp;#039;&amp;#039;&amp;#039;of&amp;#039;&amp;#039;&amp;#039; message&lt;br /&gt;
     break chunk into sixteen 32-bit little-endian words w(i), 0 ≤ i ≤ 15&lt;br /&gt;
&lt;br /&gt;
     //&amp;#039;&amp;#039;Inisialisasi nilai hash pada gumpalan ini:&amp;#039;&amp;#039;&lt;br /&gt;
     &amp;#039;&amp;#039;&amp;#039;var&amp;#039;&amp;#039;&amp;#039; &amp;#039;&amp;#039;int&amp;#039;&amp;#039; a:= h0&lt;br /&gt;
     &amp;#039;&amp;#039;&amp;#039;var&amp;#039;&amp;#039;&amp;#039; &amp;#039;&amp;#039;int&amp;#039;&amp;#039; b:= h1&lt;br /&gt;
     &amp;#039;&amp;#039;&amp;#039;var&amp;#039;&amp;#039;&amp;#039; &amp;#039;&amp;#039;int&amp;#039;&amp;#039; c:= h2&lt;br /&gt;
     &amp;#039;&amp;#039;&amp;#039;var&amp;#039;&amp;#039;&amp;#039; &amp;#039;&amp;#039;int&amp;#039;&amp;#039; d:= h3&lt;br /&gt;
&lt;br /&gt;
     //&amp;#039;&amp;#039;Kalang utama:&amp;#039;&amp;#039;&lt;br /&gt;
     &amp;#039;&amp;#039;&amp;#039;for&amp;#039;&amp;#039;&amp;#039; i &amp;#039;&amp;#039;&amp;#039;from&amp;#039;&amp;#039;&amp;#039; 0 &amp;#039;&amp;#039;&amp;#039;to&amp;#039;&amp;#039;&amp;#039; 63&lt;br /&gt;
         &amp;#039;&amp;#039;&amp;#039;if&amp;#039;&amp;#039;&amp;#039; 0 ≤ i ≤ 15 &amp;#039;&amp;#039;&amp;#039;then&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
             f:= (b &amp;#039;&amp;#039;&amp;#039;and&amp;#039;&amp;#039;&amp;#039; c) &amp;#039;&amp;#039;&amp;#039;or&amp;#039;&amp;#039;&amp;#039; ((&amp;#039;&amp;#039;&amp;#039;not&amp;#039;&amp;#039;&amp;#039; b) &amp;#039;&amp;#039;&amp;#039;and&amp;#039;&amp;#039;&amp;#039; d)&lt;br /&gt;
             g:= i&lt;br /&gt;
         &amp;#039;&amp;#039;&amp;#039;else if&amp;#039;&amp;#039;&amp;#039; 16 ≤ i ≤ 31&lt;br /&gt;
             f:= (d &amp;#039;&amp;#039;&amp;#039;and&amp;#039;&amp;#039;&amp;#039; b) &amp;#039;&amp;#039;&amp;#039;or&amp;#039;&amp;#039;&amp;#039; ((&amp;#039;&amp;#039;&amp;#039;not&amp;#039;&amp;#039;&amp;#039; d) &amp;#039;&amp;#039;&amp;#039;and&amp;#039;&amp;#039;&amp;#039; c)&lt;br /&gt;
             g:= (5×i + 1) &amp;#039;&amp;#039;&amp;#039;mod&amp;#039;&amp;#039;&amp;#039; 16&lt;br /&gt;
         &amp;#039;&amp;#039;&amp;#039;else if&amp;#039;&amp;#039;&amp;#039; 32 ≤ i ≤ 47&lt;br /&gt;
             f:= b &amp;#039;&amp;#039;&amp;#039;xor&amp;#039;&amp;#039;&amp;#039; c &amp;#039;&amp;#039;&amp;#039;xor&amp;#039;&amp;#039;&amp;#039; d&lt;br /&gt;
             g:= (3×i + 5) &amp;#039;&amp;#039;&amp;#039;mod&amp;#039;&amp;#039;&amp;#039; 16&lt;br /&gt;
         &amp;#039;&amp;#039;&amp;#039;else if&amp;#039;&amp;#039;&amp;#039; 48 ≤ i ≤ 63&lt;br /&gt;
             f:= c &amp;#039;&amp;#039;&amp;#039;xor&amp;#039;&amp;#039;&amp;#039; (b &amp;#039;&amp;#039;&amp;#039;or&amp;#039;&amp;#039;&amp;#039; (&amp;#039;&amp;#039;&amp;#039;not&amp;#039;&amp;#039;&amp;#039; d))&lt;br /&gt;
             g:= (7×i) &amp;#039;&amp;#039;&amp;#039;mod&amp;#039;&amp;#039;&amp;#039; 16&lt;br /&gt;
&lt;br /&gt;
         temp:= d&lt;br /&gt;
         d:= c&lt;br /&gt;
         c:= b&lt;br /&gt;
         b:= ((a + f + k(i) + w(g)) &amp;#039;&amp;#039;&amp;#039;leftrotate&amp;#039;&amp;#039;&amp;#039; r(i)) + b&lt;br /&gt;
         a:= temp&lt;br /&gt;
&lt;br /&gt;
     //&amp;#039;&amp;#039;Tambahkan hash dari gumpalan sebagai hasil:&amp;#039;&amp;#039;&lt;br /&gt;
     h0:= h0 + a&lt;br /&gt;
     h1:= h1 + b&lt;br /&gt;
     h2:= h2 + c&lt;br /&gt;
     h3:= h3 + d&lt;br /&gt;
&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;var&amp;#039;&amp;#039;&amp;#039; &amp;#039;&amp;#039;int&amp;#039;&amp;#039; digest:= h0 &amp;#039;&amp;#039;&amp;#039;append&amp;#039;&amp;#039;&amp;#039; h1 &amp;#039;&amp;#039;&amp;#039;append&amp;#039;&amp;#039;&amp;#039; h2 &amp;#039;&amp;#039;&amp;#039;append&amp;#039;&amp;#039;&amp;#039; h3 //&amp;#039;&amp;#039;(diwujudkan dalam little-endian)&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;Catatan: Meskipun rumusan dari yang tertera pada RFC 1321, berikut ini sering digunakan untuk meningkatkan efisiensi:&amp;#039;&amp;#039;&lt;br /&gt;
 (0  ≤ i ≤ 15): f:= d &amp;#039;&amp;#039;&amp;#039;xor&amp;#039;&amp;#039;&amp;#039; (b &amp;#039;&amp;#039;&amp;#039;and&amp;#039;&amp;#039;&amp;#039; (c &amp;#039;&amp;#039;&amp;#039;xor&amp;#039;&amp;#039;&amp;#039; d))&lt;br /&gt;
 (16 ≤ i ≤ 31): f:= c &amp;#039;&amp;#039;&amp;#039;xor&amp;#039;&amp;#039;&amp;#039; (d &amp;#039;&amp;#039;&amp;#039;and&amp;#039;&amp;#039;&amp;#039; (b &amp;#039;&amp;#039;&amp;#039;xor&amp;#039;&amp;#039;&amp;#039; c))&lt;br /&gt;
&lt;br /&gt;
== &amp;#039;&amp;#039;Hash-hash&amp;#039;&amp;#039; MD5 ==&lt;br /&gt;
&amp;#039;&amp;#039;Hash-hash&amp;#039;&amp;#039; MD5 sepanjang 128-bit (16-byte), yang dikenal juga sebagai &amp;#039;&amp;#039;ringkasan pesan&amp;#039;&amp;#039;, secara tipikal ditampilkan dalam bilangan [[heksadesimal]] 32-digit.&lt;br /&gt;
Berikut ini merupakan contoh pesan [[ASCII]] sepanjang 43-byte sebagai masukan dan &amp;#039;&amp;#039;hash&amp;#039;&amp;#039; MD5 terkait:&lt;br /&gt;
:&amp;lt;code&amp;gt;MD5(&amp;quot;The quick brown fox jumps over the lazy dog&amp;quot;)&amp;lt;/code&amp;gt; = &amp;lt;code&amp;gt;9e107d9d372bb6826bd81d3542a419d6&amp;lt;/code&amp;gt;&lt;br /&gt;
Bahkan perubahan yang kecil pada pesan akan (dengan probabilitas lebih) menghasilkan &amp;#039;&amp;#039;hash&amp;#039;&amp;#039; yang benar-benar berbeda, misalnya pada kata &amp;quot;dog&amp;quot;, huruf &amp;lt;code&amp;gt;d&amp;lt;/code&amp;gt; diganti menjadi &amp;lt;code&amp;gt;c&amp;lt;/code&amp;gt;:&lt;br /&gt;
:&amp;lt;code&amp;gt;MD5(&amp;quot;The quick brown fox jumps over the lazy cog&amp;quot;)&amp;lt;/code&amp;gt; = &amp;lt;code&amp;gt;1055d3e698d289f2af8663725127bd4b&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;#039;&amp;#039;Hash&amp;#039;&amp;#039; dari panjang-nol ialah:&lt;br /&gt;
:&amp;lt;code&amp;gt;MD5(&amp;quot;&amp;quot;)&amp;lt;/code&amp;gt; = &amp;lt;code&amp;gt;d41d8cd98f00b204e9800998ecf8427e&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Lihat pula ==&lt;br /&gt;
* [[MD2]]&lt;br /&gt;
* [[SFV]]&lt;br /&gt;
* [[Cyclic redundancy check]]&lt;br /&gt;
&lt;br /&gt;
== Pranala luar ==&lt;br /&gt;
=== Informasi MD5 ===&lt;br /&gt;
* RFC 1321 — &amp;#039;&amp;#039;Algoritma Ringkasan-Pesan MD5&amp;#039;&amp;#039;&lt;br /&gt;
*  [http://www.cert.org/security-improvement/implementations/i002.01.html &amp;#039;&amp;#039;Menggunakan MD5 untuk memastikan integritas isi dari file&amp;#039;&amp;#039;]&lt;br /&gt;
*  [http://groups.google.com/groups?selm=fgrieu-AE7D15.18300202042004%40news.fu-berlin.de Catatan Kriptoanalisis MD5]&lt;br /&gt;
*  [http://www.cryptography.com/cnews/hash.html Tanya-Jawab tentang Kerusakan &amp;#039;&amp;#039;Hash&amp;#039;&amp;#039;]&lt;br /&gt;
*  [http://md5pass.com/ MD5 Password Decrypter]&lt;br /&gt;
&lt;br /&gt;
=== Implementasi ===&lt;br /&gt;
*  [http://userpages.umbc.edu/~mabzug1/cs/md5/md5.html situs tentang MD5]  — berisi tentang berbagai macam implementasi pada berbagai bahasa pemrogaman&lt;br /&gt;
*  [http://pajhome.org.uk/crypt/md5/ Paj&amp;#039;s Home: Cryptography] ([[JavaScript|Javascript]] MD4 dan MD5, plus SHA-1)&lt;br /&gt;
*  [http://www.cs.eku.edu/faculty/styer/460/Encrypt/JS-MD5.html MD5 kalkulator dengan Javascript memberikan nilai secara langsung dari kalkulasi]&lt;br /&gt;
*  [http://www.jonelo.de/java/jacksum/index.html Jacksum] (Sebuah program dengan berbagai macam fungsi verifikasi pesan)&lt;br /&gt;
* [http://nebotov.ru/p/md5.html Pascal/Delphi realization]&lt;br /&gt;
*  [https://codebeautify.org/md5-hash-generator MD5 HASH Generator]&lt;br /&gt;
&lt;br /&gt;
=== Kerusakan ===&lt;br /&gt;
*  [http://cryptography.hyperlink.cz/MD5_collisions.html Kerusakan cepat yang ditemukan oleh V. Klima]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Sumber dan atribusi ==&lt;br /&gt;
&lt;br /&gt;
Konten artikel ini diadaptasi dari [https://id.wikipedia.org/w/index.php?title=MD5&amp;amp;oldid=29342462 Wikipedia bahasa Indonesia], revisi 29342462 (2026-06-13T18:02:00Z), yang tersedia berdasarkan lisensi Creative Commons Atribusi-BerbagiSerupa (CC BY-SA). Mohon gunakan konten ini secara bijak serta sesuai dengan ketentuan lisensi yang berlaku.&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
</feed>