くわしいやりかた
IDを元にハッシュ値A を作る関数MyHashを作りましょう Aは最低64bit程度は欲しいですね
あなたの秘密鍵 BでAを暗号化し A'とします
これを適当に文字列化しましょう 例えば16進数表示にするとかでいいいです
CRCとか適当に付けてビット数を水増しするのも良い対策です
これをユーザーに配布するキーとします
アプリではキーからCRCチェックをした後 A'を復元します
さらに A'を公開鍵を使って Aに復元します
IDからMyHashと一致を確認すればOKとします
ハッシュが一種の暗号なのに、さらに暗号化するのは何故かというと
解析されて Aを作る関数を見破られても A'を作るのは簡単ではないからです
なお、これはパッチ対策にはなりませんからご注意を