I started this project when I bought a 32GB microSDHC card for my Android phone back in 2010, and found out that this card always fails when one fills it up. Googling about this issue, I arrived at the blogs Fight Flash Fraud and SOSFakeFlash, which recomend the software H2testw (see here or here) to test flash memories.
I downloaded H2testw and found two issues with it: (1) it is for Windows only, and (2) it is not open source. However, its author, Harald Bögeholz, was kind enough to include a text file that explains what it does, and provided the pseudo random number generator used in H2testw.
This page is about my GPLv3 implementation of the algorithm of H2testw,
and other tools that I have been implementing to speed up the identification
of fake drives as well as making them usable:
My implementation of H2testw, which I've broken into two applications
f3read, runs on
Linux, Macs, Windows/Cygwin, and FreeBSD.
f3probe is the fastest way to identify fake drives and
their real sizes.
f3fix enables users to use the real capacity of
fake drives without losing data.
f3brew helps developers to infer how fake drives work.
currently runs only on Linux.
F3 stands for Fight Flash Fraud, or Fight Fake Flash.
The documentation of this project has moved to Read the Docs:
F3 is licensed under the GNU General Public License (GPL) version 3.
Copyright (c) 2010 Digirati.