Userchoice Hash __exclusive__ Jun 2026

Written by Rick Founds
Links to contributors: Rick Founds

This has been one of my favorite songs for years. I contacted Rick back in 2002 about collaborating, partly because I had sung this song so many times. The recording is from Rick's Praise Classics 2 CD. - Elton, September 12, 2009



Lyrics

Lord, I lift Your name on high.
Lord, I love to sing Your praises.
I'm so glad You're in my life;
I'm so glad You came to save us.

You came from Heaven to earth
To show the way.
From the Earth to the cross,
My debt to pay.
From the cross to the grave,
From the grave to the sky;
Lord, I lift Your name on high.

Lord, I lift Your name on high.
Lord, I love to sing Your praises.
I'm so glad You're in my life;
I'm so glad You came to save us.

You came from Heaven to earth
To show the way.
From the Earth to the cross,
My debt to pay.
From the cross to the grave,
From the grave to the sky;
Lord, I lift Your name on high.

You came from Heaven to earth
To show the way.
From the Earth to the cross,
My debt to pay.
From the cross to the grave,
From the grave to the sky;
Lord, I lift Your name on high.

You came from Heaven to earth
To show the way.
From the Earth to the cross,
My debt to pay.
From the cross to the grave,
From the grave to the sky;
Lord, I lift Your name on high.



Copyright © 1989 Maranatha Praise, Inc (used by permission)

function userChoiceHash(data, userChoice): switch userChoice.algorithm: case "SHA-256": return sha256(data + userChoice.salt) case "BLAKE3": return blake3(data) case "xxHash64": return xxhash64(data) // for speed case "LegacyMD5": return md5(data) + "⚠️INSECURE⚠️" return error("Algorithm not supported")

: Because the hash is unique to each user and machine, IT admins cannot simply copy registry keys from one computer to another to set default apps for an entire organization. Common Solutions for Issues

The hash serves as a "tamper-evident" seal. If the ProgId in the registry is changed without a corresponding valid hash, Windows resets the association to defaults. Components: The algorithm typically incorporates: User SID: Ties the association to a specific user account. ProgId: The specific application chosen (e.g., ChromeHTML ). File Extension: The targeted file type (e.g., .pdf ).

The primary goal of the UserChoice hash is to prevent "hijacking". In older versions of Windows, malware could easily change your default browser to a malicious one just by modifying a single registry key. The hash prevents this because the algorithm used to generate it is proprietary and kept secret by Microsoft. How the Hash is Calculated

The exact function is a variant of or PBKDF2 , depending on the Windows build. When a user clicks "Set as default" inside an application’s interface, Windows calculates this hash and stores it. When that protocol or extension is later invoked, Windows recalculates the hash. If the stored hash does not match the recalculated hash, Windows ignores the UserChoice setting and falls back to the system default.