RSA вообще не принимает пароль. Обозначение просто неверное.
RSASSA-PSS принимает закрытый ключ и сообщение и создает подпись. Эту подпись может проверить любой, у кого есть подпись, сообщение и открытый ключ.
RSAES-OAEP берет открытый ключ и короткое сообщение (почти всегда симметричный ключ) и шифрует это сообщение (симметричный ключ), чтобы его мог расшифровать только тот, у кого есть соответствующий закрытый ключ. На самом деле это делается не так часто, поскольку обмен ключами ECDH менее ресурсоемкий и более безопасный.
Что касается второй части вашего вопроса, это также неверно. SHA-1 не является безопасной функцией получения ключей и не может использоваться для безопасного создания общего секретного ключа. Настоящая функция получения ключа, такая как HKDF или Blake3, принимает 2-4 входа: длина для вывода (необязательно, некоторые просто выводят 256-битные значения), некоторый исходный материал ключа (обычно общий секрет, полученный в результате обмена ECDH), соль (необязательный, может быть сгенерирован внутри) и значение разделения домена (используется, чтобы гарантировать, что разные операции могут иметь разные ключи, даже если есть только один общий секрет).
Если вы хотите шифровать сообщения открытыми ключами получателей с помощью Python, используйте писодиум и методы crypto_box. Если вы хотите шифровать сообщения с помощью пароля, используйте метод crypto_pwhash для получения ключа и методы crypto_secretbox для шифрования с использованием полученного ключа.