Skip to content

Instantly share code, notes, and snippets.

@beeradmoore
Last active October 12, 2021 02:44
Show Gist options
  • Save beeradmoore/3467646864751964dbf22f462c2e5b1e to your computer and use it in GitHub Desktop.
Save beeradmoore/3467646864751964dbf22f462c2e5b1e to your computer and use it in GitHub Desktop.
File used by DLSS Swapper to confirm hashes of local zips downloaded from TechPowerUp.
[
{
"version": "2.3.1.0",
"version_number": 562962838323200,
"sha1": "5DFCD91E351105803AA64C4EA64E4A89A1A9AE29",
"md5": "0FC1727AD4A52C29E2897567008B3407"
},
{
"version": "2.3.0.0",
"version_number": 562962838323200,
"sha1": "B4834BD8A5AF7567858EB761378EE50B0CE56F29",
"md5": "7BBBB70F34FC4F2977BA442EE5FC37AC"
},
{
"version": "2.2.18.0",
"version_number": 562958544535552,
"sha1": "021BC58DEB06437FEB2B01008507BE5D96087EFE",
"md5": "77A75B96DD2D36A4A291F3939D59C221"
},
{
"version": "2.2.16.0",
"version_number": 562958544404480,
"sha1": "281620C9AECAF550F810EC53C2C3FDBAB86487B2",
"md5": "8FED151AA1B7975A1E5968B82DF4E918"
},
{
"version": "2.2.15.0",
"version_number": 562958544338944,
"sha1": "9646C34355B906B14BBA6E6220CB802CF034D153",
"md5": "C9DCDCD97E19529A7C89432693C8EC0C"
},
{
"version": "2.2.11.0",
"version_number": 562958544076800,
"sha1": "BFD9B30789D1861781FA23EDA0C1F30A185A03AB",
"md5": "65345301BA1A985AA9AC3EA6D671ABDF"
},
{
"version": "2.2.10.0",
"version_number": 562958544011264,
"sha1": "1110760889CBF810072EA2E60B1C2093AD258572",
"md5": "062215C828802B9202ADA4CA4D3619B4"
},
{
"version": "2.2.9.0",
"version_number": 562958543945728,
"sha1": "A46993DA83B233BB26E76C93D60A0440CBF6785D",
"md5": "5B9B917AF8FB72D63F073A0E0F621D94"
},
{
"version": "2.2.6.0",
"version_number": 562958543749120,
"sha1": "3BE1F7BFD631809E6CD6D8230F4827BA168A9FF8",
"md5": "52219034574426FEF16B19D2495648C0"
},
{
"version": "2.1.66.0",
"version_number": 562954252713984,
"sha1": "FE4AF59CCC9C15DEED9ED9B432788BA69F279C55",
"md5": "1A81316E57ABA6C9C46FAE53936C3933"
},
{
"version": "2.1.63.0",
"version_number": 562954252517376,
"sha1": "C978A176D76F73FBAEA808C37CA34890FE2D7B7B",
"md5": "262B728F1692E2550CF1CC9A41681A59"
},
{
"version": "2.1.62.0",
"version_number": 562954252451840,
"sha1": "A19D10FB2B1B4888868C01BB9A357D84C6190818",
"md5": "ECF487BC067ED07B90A3452DB0203655"
},
{
"version": "2.1.58.0",
"version_number": 562954252189696,
"sha1": "00FEC5630C03A1E65ADB1CA64AF47A526616955E",
"md5": "2B1B8D32E4866E7D7734ACF2BCC830B1"
},
{
"version": "2.1.55.0",
"version_number": 562954251993088,
"sha1": "5CF7A074B1196F1DF5EFC8400C1303CC76D5A7BF",
"md5": "72C53FE8CF9114143680F3BC56CEA1A7"
},
{
"version": "2.1.53.0",
"version_number": 562954251862016,
"sha1": "04407B369300A08E39E672D625428D8E5524033E",
"md5": "E696265C702CC90CBCF4974FAEEBB9F4"
},
{
"version": "2.1.52.0",
"version_number": 562954251796480,
"sha1": "2552A3BF2CB0B458587AABE26205AB6E95C63DEB",
"md5": "430EE0D531F4B89A7CC65524CCC5D912"
},
{
"version": "2.1.51.0",
"version_number": 562954251730944,
"sha1": "CB99299078BF3C42D9FFACFC9DDC26FBD240397D",
"md5": "4950C49D5E337F3146BCD51A26AB8CC6"
},
{
"version": "2.1.50.0",
"version_number": 562954251665408,
"sha1": "5B79AE89A0AB02E760A6F5A02B36E93EA1343C0D",
"md5": "6672C90B5AFEF2153259F84929364B2A"
},
{
"version": "2.1.40.0",
"version_number": 562954251010048,
"sha1": "709FBE51AF7397F152D10C1EE6382810A4D6E661",
"md5": "8E3AC0A089ABE2B319E2926B38DB0FF9"
},
{
"version": "2.1.39.0",
"version_number": 562954250944512,
"sha1": "07A1C8888C5815F15308632C1CEF1EF94F7AB89B",
"md5": "6CBF57C2D08D775808AEF61C9671DB5B"
},
{
"version": "2.1.35.0",
"version_number": 562954250682368,
"sha1": "C89EB8DF5F74747A0F390E02A437DA189C79D5D8",
"md5": "FB72213CF0F3CF103A16CFE7D930F707"
},
{
"version": "2.1.31.0",
"version_number": 562954250420224,
"sha1": "8AE9EC8716B43E6F07698FC183939676F0B03898",
"md5": "3E68D270CEF16027DA3FF3BA3B974537"
},
{
"version": "2.1.29.0",
"version_number": 562954250289152,
"sha1": "E253F32ED00E60D14326654ABB2641F5C095A61D",
"md5": "5F4B894692E9FD415731F0C0AA4A33AF"
},
{
"version": "2.1.25.0",
"version_number": 562954250027008,
"sha1": "F6CF324C3AE7B0290BBB4266E49202EA96FDA315",
"md5": "18B651A8DF80464512ED19FA9859B585"
},
{
"version": "2.1.24.0",
"version_number": 562954249961472,
"sha1": "BCC451C9A0743D58FE1DF57C176A99BB18981B51",
"md5": "5AF4C12DDE0E9DFA54ED76FE9E4DB647"
},
{
"version": "2.1.19.0",
"version_number": 562954249633792,
"sha1": "112C9E878DC9A7D04E80B02268905266FED337C1",
"md5": "0A82A657E294219B6DC8875897A2CCED"
},
{
"version": "2.1.16.0",
"version_number": 562954249437184,
"sha1": "85CD96FAE50F1BBDBB1189D24AB0E56FE59A30F7",
"md5": "1A30408F7AD1BDAEC0EF81B5E2313C4E"
},
{
"version": "2.0.38.0",
"version_number": 562949955911680,
"sha1": "B1D5854ADFF12DB596B03E5B684491AAD85091EC",
"md5": "ACB8B647BA19DCC638DD50FF621F7801"
},
{
"version": "2.0.34.0",
"version_number": 562949955649536,
"sha1": "60CC2824AE2061F4B82985902F183063EAE8232E",
"md5": "D30C27CA983F9792512C6F5874C60B2E"
},
{
"version": "1.2.14.0",
"version_number": 281483567562752,
"sha1": "2442E7B62D10635C2734F0937611E19B76C70A55",
"md5": "899EBC3AC0637125D7578D87FEF42970"
},
{
"version": "1.1.13.0",
"version_number": 281479272529920,
"sha1": "D0287369BE6F23CAE34EA3C8B85CCDAE2EDAAE5A",
"md5": "5EE9DE2AE9D76A32C727C1B6FF21E0FA"
},
{
"version": "1.1.6.0",
"version_number": 281479272071168,
"sha1": "A5452431CAEDA57774AD07B87F0425E160392EFE",
"md5": "5E7B70421ECE9DCCA09260A38E4E9172"
},
{
"version": "1.0.17.0",
"version_number": 281474977824768,
"sha1": "3B080A7C9343D9D01203D56E5C8BF009836CEE88",
"md5": "A435B45B0F2586402BCECA683DD9F1A6"
},
{
"version": "1.0.9.0",
"version_number": 281474977300480,
"sha1": "E000E8C49DEEB27314484630DE654D3730D2982F",
"md5": "667B23ED632FD0B9A5F2992ACE8C6B51"
},
{
"version": "1.0.0.0",
"version_number": 281474976710656,
"sha1": "3CBD05E8738E1A3BF6A6E5B643353C7AC5D9D499",
"md5": "65D2E2A86352D77244A73BEDD5837F50"
}
]
[
{
"filename": "nvngx_dlss_2.3.1.zip",
"md5_hash": "20655FEE7B86A1900829E423F75E2503"
},
{
"filename": "nvngx_dlss_2.3.0.zip",
"md5_hash": "0CD7297822B1D53AA7171635DBE2DF61"
},
{
"filename": "nvngx_dlss_2.2.18.zip",
"md5_hash": "4845324FF2138688AFBCDECD18817185"
},
{
"filename": "nvngx_dlss_2.2.16.zip",
"md5_hash": "B130BF8815ACC3365BAA2E9E04DB17B6"
},
{
"filename": "nvngx_dlss_2.2.15.zip",
"md5_hash": "1D3DE9FB42152AFBA240F4956C50662C"
},
{
"filename": "nvngx_dlss_2.2.11.zip",
"md5_hash": "E77C13B312735E25993CEF112C907A2E"
},
{
"filename": "nvngx_dlss_2.2.10.zip",
"md5_hash": "698847167652D2957CEB45830C7404A0"
},
{
"filename": "nvngx_dlss_2.2.9.zip",
"md5_hash": "E781302601A6758ED1EC50209B06AEF4"
},
{
"filename": "nvngx_dlss_2.2.6.zip",
"md5_hash": "F46BF60F66458E6F9CB9D16131781028"
},
{
"filename": "nvngx_dlss_2.1.66.zip",
"md5_hash": "09BC173A470D4553C13536BEF79D7986"
},
{
"filename": "nvngx_dlss_2.1.63.zip",
"md5_hash": "BE80C1B71AEE9AB52B7E890D917CFFA5"
},
{
"filename": "nvngx_dlss_2.1.62.zip",
"md5_hash": "9F5B00C56A145AF5A5BEF8888A56BF85"
},
{
"filename": "nvngx_dlss_2.1.58.zip",
"md5_hash": "3CBCDD51AA4D0B727CDFD79F5831EF8F"
},
{
"filename": "nvngx_dlss_2.1.55.zip",
"md5_hash": "93144A18D4370A6D35C66F931DF54257"
},
{
"filename": "nvngx_dlss_2.1.53.zip",
"md5_hash": "62820F2055D187106710BE65B18324CC"
},
{
"filename": "nvngx_dlss_2.1.52.zip",
"md5_hash": "A116B0B641A3EDDCF9AE49F40A3D99C0"
},
{
"filename": "nvngx_dlss_2.1.51.zip",
"md5_hash": "4CFD5A5508673E1E188B758EE54ABC1C"
},
{
"filename": "nvngx_dlss_2.1.50.zip",
"md5_hash": "BC63BC2B676B5C449850B3056EFD582B"
},
{
"filename": "nvngx_dlss_2.1.40.zip",
"md5_hash": "39166FF5319D8A1766901602426E7515"
},
{
"filename": "nvngx_dlss_2.1.39.zip",
"md5_hash": "EA5928352E7EFAA392134980A41109F5"
},
{
"filename": "nvngx_dlss_2.1.35.zip",
"md5_hash": "78AD375C41FFB789B9F6C1424987A2EC"
},
{
"filename": "nvngx_dlss_2.1.31.zip",
"md5_hash": "4AFDF38772DE9F6AB164C5D3E4716B0B"
},
{
"filename": "nvngx_dlss_2.1.29.zip",
"md5_hash": "81FDFCC2814322628AF7606639950A54"
},
{
"filename": "nvngx_dlss_2.1.25.zip",
"md5_hash": "FB092A059EC290940CACBE0F4FE000B4"
},
{
"filename": "nvngx_dlss_2.1.24.zip",
"md5_hash": "5C200FBBF9B4650A329423A64A57BEDE"
},
{
"filename": "nvngx_dlss_2.1.19.zip",
"md5_hash": "ECD60DB599A04A23CC76CDCA76CF27AC"
},
{
"filename": "nvngx_dlss_2.1.16.zip",
"md5_hash": "B2F6F91B8AFF998E37C6DF8C5ADF62D8"
},
{
"filename": "nvngx_dlss_2.0.38.zip",
"md5_hash": "ABB667A9B57642DB70A6F1747B1C8586"
},
{
"filename": "nvngx_dlss_2.0.34.zip",
"md5_hash": "82464356D23ABF205B8729A081F70B8F"
},
{
"filename": "nvngx_dlss_1.2.14.zip",
"md5_hash": "8F1B5B520584E261471114F2AEB28A55"
},
{
"filename": "nvngx_dlss_1.1.13.zip",
"md5_hash": "CF89125E9046824A880221FF9B12B459"
},
{
"filename": "nvngx_dlss_1.1.6.zip",
"md5_hash": "CF7B0C209E9C95C58A5476D911576E09"
},
{
"filename": "nvngx_dlss_1.0.17.zip",
"md5_hash": "235FE62C8CD26B2CEEE6A8239E539EE5"
},
{
"filename": "nvngx_dlss_1.0.9.zip",
"md5_hash": "185C5F0443051A91A6D1074A21BF4072"
},
{
"filename": "nvngx_dlss_1.0.0.zip",
"md5_hash": "D942939F0D3A170AE9E72E8500FC393D"
}
]
@MorGuux
Copy link

MorGuux commented Sep 10, 2021

Version 1.2.14 is missing from both of these lists.

techpowerup_dlss_dll_hashes.json should contain

{
    "version": "1.2.14.0",
    "version_number": ...,
    "sha1": "2442E7B62D10635C2734F0937611E19B76C70A55",
    "md5": "899ebc3ac0637125d7578d87fef42970"
  },

where version_number is calculated (I don't know how it's made)

and techpowerup_dlss_downloads.json contains

{
    "filename": "nvngx_dlss_1.2.14.zip",
    "md5_hash": "8F1B5B520584E261471114F2AEB28A55"
},

@beeradmoore
Copy link
Author

Thanks, not sure how I missed this. Will update later today.

For what its worth version number is just converting the 1.2.14.0 version parts into a bit shifted number so that way when we order things 1.2.14.0 is above 1.2.2.0 (if that version did exist) when ordered in a list.

ulong VersionNumber = ((ulong)2 << 48) +
                ((ulong)2 << 32) +
                ((ulong)18 << 16) +
                ((ulong)0);

So that one would be 562958544535552.

But now I looking at it again I am pretty confident that what I intended to do isn't what its actually doing, it just happens to still work correctly. I'll also fix that in the future.

@MorGuux
Copy link

MorGuux commented Sep 10, 2021

Ahh okay.

You should be able to use the Version class instead of strings for storing the version of each dll. It has four components, you can compare higher/lower with them, convert to string etc.

@beeradmoore
Copy link
Author

Oh wait, no it is working as intended. I don't think Version can be converted to a 64bit number with a simple method. The bitshifting I am doing above is coming from the 4 parts of a version being 16bit numbers each and then just slapping them all in the one value.

Need to be a number so I can store it in json as well. If needed we could add a json converter to convert ulong to Version, but it'll be a change for not much gain.

@MorGuux
Copy link

MorGuux commented Sep 10, 2021

I think you can reference Version.Major, Version,Minor ... for the four parts, and you can convert to/from strings to Versions pretty quick too

Version dllVersion = new Version("1.2.14.0"); 

but I agree, there won't be any significant gains.

@beeradmoore
Copy link
Author

beeradmoore commented Sep 12, 2021

Updated, removed 1.0.13.0 and 1.0.11.0 for further investigation after they failed a signature check. They may get re-added later.

  {
    "version": "1.0.13.0",
    "version_number": 281474977562624,
    "sha1": "FC7BAAB517218031E78FC425FE9F49977E00EAF7",
    "md5": "A8ED873E61FCB3A105D249824A0B0511"
  },
  {
    "version": "1.0.11.0",
    "version_number": 281474977431552,
    "sha1": "91C28E400D7E907C74CC6B184439BB6A7E08FD43",
    "md5": "41878C22B109427192788DD4FCE796C1"
  },
{
    "filename": "nvngx_dlss_1.0.13.zip",
    "md5_hash": "56428FC6BC0454BD11FBB90CF237EFAC"
},
{
    "filename": "nvngx_dlss_1.0.11.zip",
    "md5_hash": "1FFE9D00DAAE043BEBE52369FC0D96A8"
},

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment