| 
                        12345678910111213141516171819202122232425262728293031323334353637383940 | 
                        - #
 - #  Copyright 2025 The InfiniFlow Authors. All Rights Reserved.
 - #
 - #  Licensed under the Apache License, Version 2.0 (the "License");
 - #  you may not use this file except in compliance with the License.
 - #  You may obtain a copy of the License at
 - #
 - #      http://www.apache.org/licenses/LICENSE-2.0
 - #
 - #  Unless required by applicable law or agreed to in writing, software
 - #  distributed under the License is distributed on an "AS IS" BASIS,
 - #  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 - #  See the License for the specific language governing permissions and
 - #  limitations under the License.
 - #
 - 
 - import base64
 - import os
 - import sys
 - from Cryptodome.PublicKey import RSA
 - from Cryptodome.Cipher import PKCS1_v1_5 as Cipher_pkcs1_v1_5
 - from api.utils import decrypt, file_utils
 - 
 - 
 - def crypt(line):
 -     file_path = os.path.join(
 -         file_utils.get_project_base_directory(),
 -         "conf",
 -         "public.pem")
 -     rsa_key = RSA.importKey(open(file_path).read(),"Welcome")
 -     cipher = Cipher_pkcs1_v1_5.new(rsa_key)
 -     password_base64 = base64.b64encode(line.encode('utf-8')).decode("utf-8")
 -     encrypted_password = cipher.encrypt(password_base64.encode())
 -     return base64.b64encode(encrypted_password).decode('utf-8')
 - 
 - 
 - if __name__ == "__main__":
 -     pswd = crypt(sys.argv[1])
 -     print(pswd)
 -     print(decrypt(pswd))
 
 
  |