Все с чем работают контракты - публично, вы не можете спрятать в блокчейне что-либо.
Возможно как то использовать гомоморфное шифрование, я не знаю, это область еще слабо в криптоэкономике использована (zcash).
Не понимаю, зачем вам хранить публично (пусть бы и зашифровано) пароли, если у вас есть сервер (в терминологии контрактов это оракул), который эти пароли куда то отсылает. Хранить на сервере скрытно не получится?