[ACP-456]  Serial key format
Type Quirk
Priority Low
Severity Trivial
Component Main Program, Registration Component
Fixed In Version [6.06.0
Versions Affected [5.1.115.1 Hot Fix 11
Severity Closed
Resolution Complete
Reported By Bob Denny
Resources Bob Denny
Start Date 9/27/2010

Description
Once in a blue moon, email (Gmail) mangles the license. I just ran into this on a license that has -o%6%- in it. It got turned into -o9wF$rsyh%- by GMail! Looks like their email system is sensitive to C++ format strings. The %6 got turned into some trash that happened to be on the stack, like it was a printf() format thing. 

In the end, the license strings I use are too baroque. Look at accepting an alternate format which consists of letters and numbers only, using lower case letters to avoid confusion between numbers and letters. No punctuation symbols. Output in groups of 4 letters.

Comments
9/28/2010 10:05:50 AM   Bob Denny
SVN Comment
Author rbdenny
Repository svn+ssh://rbdenny@a2_svn_dc3/home/rbdenny/svn/astro/acp
SVN Revision 80
Affected files /trunk/ACP Help/relnotes.htm (Modified)
/trunk/ACP.vbp (Modified)
/trunk/Main.bas (Modified)
/trunk/WebDocs (Modified)
/trunk/frmRegister.frm (Modified)
Check-in comment Completed. ACP can now use both old and new license key formats. Tested with new license key generator. GEM:456
9/28/2010 9:46:24 AM   Bob Denny
SVN Comment
Author rbdenny
Repository svn+ssh://rbdenny@a2_svn_dc3/home/rbdenny/svn/astro/acp
SVN Revision 79
Affected files /trunk/SerialGen/sergen.exe (Modified)
/trunk/SerialGen/sergen.frm (Modified)
Check-in comment Oops, forgot to remove layout string from serial field of serial generator. GEM:456
9/28/2010 9:40:23 AM   Bob Denny
SVN Comment
Author rbdenny
Repository svn+ssh://rbdenny@a2_svn_dc3/home/rbdenny/svn/astro/acp
SVN Revision 78
Affected files /trunk/SerialGen/sergen.exe (Modified)
/trunk/SerialGen/sergen.frm (Modified)
/trunk/SerialGen/sergen.vbp (Modified)
Check-in comment Serial generator upgraded for old and new formats GEM:456
9/28/2010 9:29:44 AM   Bob Denny
SVN Comment
Author rbdenny
Repository svn+ssh://rbdenny@a2_svn_dc3/home/rbdenny/svn/etc
SVN Revision 161
Affected files /dc3reg/trunk/Engine.cpp (Modified)
/dc3reg/trunk/TestEncode.js (Added)
/dc3reg/trunk/TestEncode2.js (Added)
/dc3reg/trunk/b32encode.cpp (Added)
/dc3reg/trunk/b32encode.h (Added)
/dc3reg/trunk/dc3reg.h (Modified)
/dc3reg/trunk/dc3reg.tlb (Modified)
/dc3reg/trunk/dc3reg.vcxproj (Modified)
/dc3reg/trunk/dc3reg.vcxproj.filters (Modified)
/dc3reg/trunk/dc3reg.vcxproj.user (Modified)
/dc3reg/trunk/dc3reg_i.c (Modified)
/dc3reg/trunk/dc3reg_p.c (Modified)
Check-in comment Completed DC3Reg engine 2.0.1 with new Generate2() and Check2() methods. GEM:456
9/27/2010 9:20:07 PM   Bob Denny
Using Base32 encoding to encode 120 bits of the MD5 to 24 characters, 6 groups of 4. Will use the z-base32 alphabet, lower case letters so no confusion between letters and numbers.
9/27/2010 9:11:19 PM   Bob Denny
SVN Comment
Author rbdenny
Repository svn+ssh://rbdenny@a2_svn_dc3/home/rbdenny/svn/etc
SVN Revision 160
Affected files /dc3reg/trunk/Engine.cpp (Modified)
/dc3reg/trunk/dc3reg.h (Modified)
/dc3reg/trunk/dc3reg.tlb (Modified)
/dc3reg/trunk/dc3reg.vcxproj (Modified)
/dc3reg/trunk/dc3reg.vcxproj.filters (Modified)
/dc3reg/trunk/dc3reg_i.c (Modified)
/dc3reg/trunk/dc3reg_p.c (Modified)
Check-in comment Base32 encoding, new methods Generate2() and Check2 exposed to COM. Partially completed. GEM:456
9/27/2010 6:36:21 PM   Bob Denny
SVN Comment
Author rbdenny
Repository svn+ssh://rbdenny@a2_svn_dc3/home/rbdenny/svn/etc
SVN Revision 159
Affected files /dc3reg/trunk/Engine.cpp (Modified)
/dc3reg/trunk/Engine.h (Modified)
/dc3reg/trunk/Engine.rgs (Modified)
/dc3reg/trunk/dc3reg.h (Modified)
/dc3reg/trunk/dc3reg.idl (Modified)
/dc3reg/trunk/dc3reg.tlb (Modified)
/dc3reg/trunk/dc3reg.vcxproj (Modified)
/dc3reg/trunk/dc3reg.vcxproj.filters (Modified)
/dc3reg/trunk/dc3reg_i.c (Modified)
/dc3reg/trunk/dc3reg_p.c (Modified)
Check-in comment Now has new IDL, methods Generate2() and Check2(), which are stubbed out but function from COM. Will be used for new format serial strings. GEM:456
9/27/2010 5:39:41 PM   Bob Denny
SVN Comment
Author rbdenny
Repository svn+ssh://rbdenny@a2_svn_dc3/home/rbdenny/svn/etc
SVN Revision 158
Affected files /dc3reg/trunk (Modified)
/dc3reg/trunk/StdAfx.cpp (Modified)
/dc3reg/trunk/StdAfx.h (Modified)
/dc3reg/trunk/Test/test.exe (Modified)
/dc3reg/trunk/Test/test.vbp (Modified)
/dc3reg/trunk/Test/test.vbw (Modified)
/dc3reg/trunk/dc3reg.aps (Modified)
/dc3reg/trunk/dc3reg.def (Modified)
/dc3reg/trunk/dc3reg.dsp (Deleted)
/dc3reg/trunk/dc3reg.dsw (Deleted)
/dc3reg/trunk/dc3reg.rc (Modified)
/dc3reg/trunk/dc3reg.sln (Added)
/dc3reg/trunk/dc3reg.vcxproj (Added)
/dc3reg/trunk/dc3reg.vcxproj.filters (Added)
/dc3reg/trunk/dc3reg.vcxproj.user (Added)
/dc3reg/trunk/md5_dgst.c (Modified)
Check-in comment Migrate this engine to VS2010 in preparation for changing the license encoding scheme. The ATL usage is ancient! GEM:456
9/27/2010 4:55:17 PM   Bob Denny
This percolates through other things, like the generator for keys in the Software Store.