<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent posts to Discussion</title><link>https://sourceforge.net/p/proxycrypt/discussion/</link><description>Recent posts to Discussion</description><atom:link href="https://sourceforge.net/p/proxycrypt/discussion/feed.rss" rel="self"/><language>en</language><lastBuildDate>Thu, 16 Apr 2026 14:07:14 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/proxycrypt/discussion/feed.rss" rel="self" type="application/rss+xml"/><item><title>Version 3.1.0</title><link>https://sourceforge.net/p/proxycrypt/discussion/general/thread/8c0d5173a9/?limit=25#9018</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;This release brings a lot of work on the performances.&lt;/p&gt;
&lt;p&gt;The AVX executable is replaced by an AVX2 one. AVX2 allows a great speedup with Serpent and SHACAL-2: instead of encrypting 4 blocks at once, 8 blocks are now encrypted. The speedup is mitigated by XTS and the multithreading though.&lt;br/&gt;
Keeping an AVX1 executable makes no sense because the speedup was very limited (there was no dedicated implementation of the algorithms) and CPUs with AVX1 but no AVX2 are now rather rare. Moreover, other optimizations now make the SSE3 executable faster than the AVX1 one.&lt;/p&gt;
&lt;p&gt;As always, unlike some other encryption softwares, the integrated benchmark (-bm) shows the true speeds of the ciphers, that is, with the XTS mode of operation which requires some computations.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">v77</dc:creator><pubDate>Thu, 16 Apr 2026 14:07:14 -0000</pubDate><guid>https://sourceforge.netd7cf7a18b72d7a4964cc58bbe95087a7dd6995ec</guid></item><item><title>Decrypt drive encrypted by other program</title><link>https://sourceforge.net/p/proxycrypt/discussion/general/thread/3f8124bd73/?limit=25#bd87</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Each encryption software has its own protocols. ProxyCrypt can only decrypt the volumes it has created.&lt;br/&gt;
Of course, some softwares can decrypt data from other softwares, but it must be explicitly specified. But this type of compatibility is not very common, especially for disk encryption, because it's difficult to implement while keeping performance and reliability.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">v77</dc:creator><pubDate>Mon, 29 Dec 2025 11:42:55 -0000</pubDate><guid>https://sourceforge.net6de554ab2cdc41f747918094f8605da366ee80c0</guid></item><item><title>Decrypt drive encrypted by other program</title><link>https://sourceforge.net/p/proxycrypt/discussion/general/thread/3f8124bd73/?limit=25#3036</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Hi, I'm trying to transition from the dead project FreeOTFE to one still developped, but I'm encountering a problem when I'm trying to decrypt my encrypted drive with ProxyCrypt.&lt;br/&gt;
ProxyCrypt seems to recognize the encrypted drive, but when I'm entering the same password that I enter in FreeOTFE, it gives an error.&lt;br/&gt;
So I'm wondering whether ProxyCrypt can decrypt this drive?&lt;br/&gt;
Here's the output:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;C:\ProxyCryptGUI2025\exe&amp;gt;ProxyCrypt.exe -d 2, -p 0 -v 2
AES instructions detected.
Uses 8 threads for encryption/decryption.
Sector size: 512.
Total size: 2 000 398 934 016 bytes.
2 000 398 934 016 bytes used from offset 0.
 ? Read: 8192 bytes at offset 0

Enter password:
**************
Checking password... Error. Please retry.
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;I'm not sure with which options the drive was encrypted, in FreeOTFE I see these settings for the drive:&lt;br/&gt;
Cipher: AES, Mode: XTS, Keysize: 256, blockhain: 128, Sector IV: null&lt;br/&gt;
And when encrypting a new file, these settings are used by default (which I assume I used):&lt;br/&gt;
Hash: SHA-512, Cypher: AES (256bits XTS), Sector IVs: null&lt;/p&gt;
&lt;p&gt;Possibly it's the Hash causing a problem?&lt;br/&gt;
Though I tested with a volumefile created by FreeOTFE and Whirlpool hash, but here the same problem.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Christo</dc:creator><pubDate>Mon, 29 Dec 2025 10:56:40 -0000</pubDate><guid>https://sourceforge.net8d53c12a1a482cf5a2fcea89b5164db76cc2d15c</guid></item><item><title>Scrypt PRF</title><link>https://sourceforge.net/p/proxycrypt/discussion/general/thread/17d0062945/?limit=25#1ca9</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;That is extremely helpful, thanks!&lt;/p&gt;
&lt;p&gt;Changing big-&amp;gt;little endian (both data and keys) makes the two match. 👍&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">RichardH</dc:creator><pubDate>Wed, 05 Nov 2025 19:47:25 -0000</pubDate><guid>https://sourceforge.net13cfccafb35f0be752c746aee6bb497b7985830c</guid></item><item><title>Scrypt PRF</title><link>https://sourceforge.net/p/proxycrypt/discussion/general/thread/17d0062945/?limit=25#0625</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;I speak of SHACAL-2 in my presentation of ProxyCrypt 2.0 &lt;a class="" href="https://sourceforge.net/p/proxycrypt/discussion/general/thread/590e8cb5/"&gt;here&lt;/a&gt;.&lt;br/&gt;
Not really a variant, but data are loaded in little endian format for each 32-bit word. This is very likely the cause of the difference.&lt;/p&gt;
&lt;p&gt;By the way, I forgot that I had an archive of SHACAL-2 before my SSE2 optimization. Don't know if it can be helpful for you.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">v77</dc:creator><pubDate>Wed, 05 Nov 2025 11:15:58 -0000</pubDate><guid>https://sourceforge.net9d12bd1212831e47a37a276105c61894bd0624fb</guid></item><item><title>Scrypt PRF</title><link>https://sourceforge.net/p/proxycrypt/discussion/general/thread/17d0062945/?limit=25#e40e</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;The XTS with 256-bit blocks stuff is definitely interesting, looking at that now.&lt;/p&gt;
&lt;p&gt;Having some difficulty aligning SHACAL-2 output, for example, looking at your test.c&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;unsigned char k1&lt;span&gt;[64]&lt;/span&gt; = {0x00, 0x00, 0x00, 0x80};&lt;br/&gt;
unsigned char pt1&lt;span&gt;[32 * 4]&lt;/span&gt; = {};&lt;br/&gt;
&lt;span&gt;[...]&lt;/span&gt;&lt;br/&gt;
  printf("expected:  32B61A36A7E7A92F8D8123BBBD019E8373F4FDDADD6E4205B9ED7A29AE2B20F6\n");&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;the input matches a known test vector from &lt;a href="https://github.com/weidai11/cryptopp/blob/60f81a77e0c9a0e7ffc1ca1bc438ddfa2e43b78e/TestVectors/shacal2.txt#L4" rel="nofollow"&gt;https://github.com/weidai11/cryptopp/blob/60f81a77e0c9a0e7ffc1ca1bc438ddfa2e43b78e/TestVectors/shacal2.txt#L4&lt;/a&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Comment:    Set 1, vector 24&lt;br/&gt;
Key:        00000080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000&lt;br/&gt;
Plaintext:  0000000000000000000000000000000000000000000000000000000000000000&lt;br/&gt;
Ciphertext: 7AC85AA2C5A9A219B8E437C65913738628EE442F56BD57292C8A1B36026B6664&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;and that is the output my implementation is giving too.&lt;/p&gt;
&lt;p&gt;Assuming your 4-blocks-in-one-call should give the same output for the first block, any idea why the two differ? Are you using a variant of SHACAL-2?&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">RichardH</dc:creator><pubDate>Tue, 04 Nov 2025 23:17:14 -0000</pubDate><guid>https://sourceforge.netc1d11ad192f481996c5d0c9d196b0b863ff163ea</guid></item><item><title>Scrypt PRF</title><link>https://sourceforge.net/p/proxycrypt/discussion/general/thread/17d0062945/?limit=25#2d95</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Yeah, I already extended my scrypt to support other prf's.&lt;/p&gt;
&lt;p&gt;I focused on version 2 indeed, good to know that v1 is not worth the trouble, thanks. If you ever create v3, it might make sense to align the two 64bit counters on 8-byte boundary to make it easier to read these values cross-platform.&lt;/p&gt;
&lt;p&gt;My initial release will support AES/Whirlpool only. Other options follow shortly in updates after that.&lt;/p&gt;
&lt;p&gt;Proof-of-concept is working nicely, here's a screenshot taken on Windows and iPhone simulator.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">RichardH</dc:creator><pubDate>Mon, 03 Nov 2025 10:13:35 -0000</pubDate><guid>https://sourceforge.net9991651f4ed9134d771e3707239368a313fb9d89</guid></item><item><title>Scrypt PRF</title><link>https://sourceforge.net/p/proxycrypt/discussion/general/thread/17d0062945/?limit=25#657c</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Interesting. As said, the most uncommon part is XTS with 256-bit blocks.&lt;br/&gt;
If you already have all the required algorithms, this scrypt implementation should be easy to handle.&lt;br/&gt;
For the volume header, I don't know what you have in mind but I would suggest to ignore the version 1 (HEADER_STRUCT_v1). I created ProxyCrypt 12 years ago, but the version 2 is 9 years old, so supporting the version 1 seems rather meaningless.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">v77</dc:creator><pubDate>Mon, 03 Nov 2025 09:49:57 -0000</pubDate><guid>https://sourceforge.net80c80065cad1b3147a708607e962795efcb64339</guid></item><item><title>Scrypt PRF</title><link>https://sourceforge.net/p/proxycrypt/discussion/general/thread/17d0062945/?limit=25#6441</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Just a FYI, as you might be interested to know that I decided to add ProxyCrypt support, which will allow accessing the contents of a disk image on iOS and macOS.&lt;/p&gt;
&lt;p&gt;&lt;a class="" href="https://www.reddit.com/r/DiskDecipher/comments/1omust8/support_for_proxycrypt_coming_to_disk_decipher/?utm_source=share&amp;amp;utm_medium=web3x&amp;amp;utm_name=web3xcss&amp;amp;utm_term=1&amp;amp;utm_content=share_button" rel="nofollow"&gt;read more&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">RichardH</dc:creator><pubDate>Sun, 02 Nov 2025 22:47:27 -0000</pubDate><guid>https://sourceforge.netce5ecf33988db724a635ef53afc3bcaa2a10c05d</guid></item><item><title>Scrypt PRF</title><link>https://sourceforge.net/p/proxycrypt/discussion/general/thread/17d0062945/?limit=25#05f5</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;While I fully agree that it is technically possible to use a different hash function (or use a completely different PRF instead of HMAC for that matter), the specs for scrypt are pretty clear on HMAC-SHA256 being required, like in the RFC the algorithm starts with&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="k"&gt;&amp;gt; &lt;/span&gt;&lt;span class="ge"&gt;1. Initialize an array B consisting of p blocks of 128 * r octets&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;blockquote&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;   each:
    B[0] || B[1] || ... || B[p - 1] =
      PBKDF2-HMAC-SHA256 (P, S, 1, p &lt;span class="gs"&gt;* 128 *&lt;/span&gt; r)
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;/blockquote&gt;
&lt;p&gt;Similary, the original paper defines a MFcrypt (which matches your usage), and then defines scrypt as a special case using HMAC-SHA256.&lt;/p&gt;
&lt;p&gt;Anyway, it wasn't my intention to start arguing this, I was just curious why you chose a different hash function, was there a specific reason &lt;em&gt;not&lt;/em&gt; to use SHA256?&lt;/p&gt;
&lt;p&gt;The reason I'm interested is because I could add support for ProxyCrypt to my app Disk Decipher, which would allow accessing ProxyCrypt images  on iOS/macOS platform. Most of the crypto stuff is already in there to support other formats like VeraCrypt and LUKS, just not non-standard scrypt 😀&lt;/p&gt;
&lt;p&gt;I saw the improved XTS implementation, need some more time analyzing that. SSE2 is not available on Apple platform, but that's easy to workaround.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">RichardH</dc:creator><pubDate>Fri, 31 Oct 2025 13:24:13 -0000</pubDate><guid>https://sourceforge.netae4541598fdb180fd3e0ea7949416d10b9696deb</guid></item></channel></rss>