Question Detecting fake SD cards

DynV

Distinguished
Aug 13, 2009
280
5
18,785
I formatted a--very--cheap 1 TB SD card to NTSC and it took > 2 days. I then copied a 19 GB file on it and the 1st ~3/5 it was at ~3.5 MB/s and the remainder seemed to increase ~1 MB/s. I then did a checksum on it and I didn't realize I was doing 2 at the same time, I sent the file to Jacksum and I saw no message, no progress bar, heard no sound, so assumed the program didn't work, I then started a checksum with a GUI, and it took a looong time to complete, well it turns out the Jacksum result was about the same time as the GUI as I kept a semi-regular eye on the GUI (and Jacksum put its result in a new Notepad instance) ; the speed seemed to be about the reverse, it started slow for a long time then it got ~1/3 slower for some time.

Now I've been running h2testw for 2:30 and it got to 34 GB and it's been writing at about the same speed as the earlier 1st part (~3.5 MB/s ). I expected the writing to stop <= 19 GB. Is it going to stop if it's a fake SD that's set to loop until it get to 1 TB or not? If not, I have to wait the almost 3 days predicted to remain if it keep about the same speed to then read in a loop for who knows how long, probably 2X as long if the experience matched my earlier test of 19 GB, to find out h2testw write doesn't match it's read ?

Thank you kindly for your help
 
  • Like
Reactions: ROOT#

ROOT#

Prominent
Nov 29, 2021
6
4
515
Why would someone use 1tb sd card with 3.5 MB/s? Try copying one video to sd card and open video from card itself, let it loop in background while you are writing sd card. If it is not fake then video will be still playable in the end of test.
 

DynV

Distinguished
Aug 13, 2009
280
5
18,785
AFAIK to trick that there's more data when there isn't they put a tiny circuit that loops the data (from end to beginning) while counting the input and stop when it should; there will have been written whatever size you sent to it, but unlike real devices that but each data parcel on different storage parts, all the data beyond the real capacity will have been overwritten, and what's written will only be the end of what was copied.

Now h2testw writes blocks of 1 GB. If the real size is 16 GB and I copy 20 GB to it, AFAIK absolutely nothing will let me me know that starting at 16.01GB, the beginning will vanish and won't stop until the 20 GB has been sent. Now I'd only have wasted a few mins for that. Now what if the card is only 32 GB while what's transferred is close to 1000 consecutive 1 GB files (ie 1.h2w to 999.h2w), how long would I have wasted?!