DelphianWorldにて「暗号」で検索すればいくつかヒットしますが・・・
「Delphi 暗号 コンポーネント」をキーにググってもいろいろヒットするようです。
>日付けにより、復号するパスワードが変更
この部分は自分で実装した方がよろしいんじゃないですか?
例えば、暗号化関数として次のようなものがある場合、
procedure myEncrypt( src:TMemoryStream; var dst:TMemoryStream; key:string );
keyの部分は暗号化アルゴリズムには基本的に依存しないので
コンポーネントの選択の幅が広がりますしね。
また、日付からキーを生成する場合でもハッシュを使えば元の日付を
類推できなくしますから、気休め程度ですが強度は増すんじゃないでしょうか。
key = GetMD5String( FormatDateTime( 'yyyymmdd', now ) + '適当な文字列' );
みたいに。
で、一言。
htmlメールはできれば避けてほしい。