2番目のオプションはより安全です。
あなたの方法は、メッセージの完全性を提供しません。これは、攻撃者が暗号文の一部を変更し、プレーンテキストが復号化するものを変更できることを意味します。彼らがあなたの32ビットの静的署名を変更するものを変更しない限り、あなたはそれを信頼するでしょう。 2番目の方法のHMACは、メッセージの整合性を提供します。
キーを8192回ハッシュすることにより、誰かがキーをブルートフォースしようとするための追加の計算手順を追加します。ユーザーが辞書ベースのパスワードを選択すると仮定します。あなたの方法では、攻撃者が実行する必要があります SHA256(someguess)
そして、復号化しようとします。ただし、PolarsSLバージョンでは、計算する必要があります SHA256(SHA256(SHA256...(SHA256(someguess)))
8192回。これは攻撃者を遅くするだけですが、それだけで十分かもしれません(今のところ)。
それが価値があることについては、既存のライブラリを使用してください。暗号化は困難であり、微妙な間違いになりやすいです。