Skip to main content

A library for secure password handling.

Project description

CryptoLibrary is a library for secure password handling. project page

For more information about Robot Framework, see http://robotframework.org.


Installation

If you already have Python >= 3.6 with pip installed, you can simply run:

pip install --upgrade robotframework-crypto

or if you have Python 2 and 3 installed in parallel you may use

pip3 install --upgrade robotframework-crypto

If you have Python 2 … i am very sorry! Please update!


How it works

CryptoLibrary uses asymmetric crypto with elliptic curve cryptography to store confidential data securely.

With python -m CryptoLibrary you can generate a key pair (private and public key) for your test env. You will get the public key after generating.

this public key can now be used to encrypt every data you do not want to be public. Passwords, personal data, etc.

you can use python -m CryptoClient on you computer where you want to encrypt data. Encrypted Data will look like this:

tIdr5s65+ggfJZl46pJgljioCUePUdZLozgiwquznw+xSlmzT3dcvfrTL9wIdRwmNOJuONT7FBW5

this encrypted data can now be decrypted with CryptoLibrary within RobotFramework.

CryptoLibrary need the private_key_store.json for this. This is what is generated as key pair. Private key can be imported in test env with python -m CryptoLibrary .


Suppressing encrypted Text from Logs

All Data that is decrypted by CryptoLibrary is replaced in the log by *** This works always and can not be disabled. No need to use special keywords for this.


Usage in Test

*** Settings ***
Resource    imports.resource
Library     CryptoLibrary    ${decryption_password}    #private key which should be secret is also protected by a password

*** Variables ***
${secret}=     KILL ALL HUMANS!!!
${enc_user}=   nkpEPOVKfOko3t04XxOupA+F/ANTEuR9aQuPaPeMBGBQenwYf6UNESEl9MWRKGuj60ZWd10=
${enc_pwd}=    TVpamLXCtrzRsl8UAgD0YuoY+lSJNV73+bTYhOP51zM1GQihgyCvSZ2CoGoKsUHLFjokyJLHxFzPEB4=

*** Test Cases ***
Valid Login
    Open Browser    ${BASE-URL}
    Suppress Logging                                  #disable Robot Framework logging
    ${var}=    set Variable   ${secret}
    Log    ${var}
    Suppress Logging    False                         #disable Robot Framework logging
    Decrypt Text To Variable    user    ${enc_user}   #puts the decrypted pain text into ${user}
    ${var2}=    set Variable    ${user}
    log    ${var2}
    Input Text      id:input_username    ${user}
    ${password}=    Get Decrypted Text    ${enc_pwd}  #decrypts cipher text and returns plain text
    Input Password    id:input_password    ${password}
    Click Button    id:button_login
    Page Should Contain Element    //a[text()='Logout']
    Location Should Be    ${BASE-URL}list
    [Teardown]   Close Browser

in this case the decryption password for the private key. It can also be saved on test env persistently as a hash.

THIS IS JUST AN ALPHA VERSION !!11!!1

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

robotframework-crypto-0.0.1.tar.gz (59.5 kB view details)

Uploaded Source

Built Distribution

robotframework_crypto-0.0.1-py3-none-any.whl (17.3 kB view details)

Uploaded Python 3

File details

Details for the file robotframework-crypto-0.0.1.tar.gz.

File metadata

  • Download URL: robotframework-crypto-0.0.1.tar.gz
  • Upload date:
  • Size: 59.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.5.0.1 requests/2.18.4 setuptools/41.0.1 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.7.3

File hashes

Hashes for robotframework-crypto-0.0.1.tar.gz
Algorithm Hash digest
SHA256 e6c3858b242d6cb4ba222f0a18d9e9c744b7c49fcbe37bffeb2df8881a9d310e
MD5 de0539e41703f2525293d3c56a07d7e3
BLAKE2b-256 ddeab214203464fbe3c98630f33e7ccb18c1cb92c67ac7cf387f0995f356a7d3

See more details on using hashes here.

Provenance

File details

Details for the file robotframework_crypto-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: robotframework_crypto-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 17.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.5.0.1 requests/2.18.4 setuptools/41.0.1 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.7.3

File hashes

Hashes for robotframework_crypto-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 950be86680ea083dff30069889fab2fcf7cf6fb127121b7c3902f55c5b04cf6a
MD5 6dcf4f22f8f4453cc1b18cf93dd577fe
BLAKE2b-256 8f6afbf945264e00f1bbd318c8e154e4ba00ac241c357ca92858c1b10ef1159a

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page