当前位置: 首页>>代码示例>>Python>>正文


Python CryptSetup.luksFormat方法代码示例

本文整理汇总了Python中pycryptsetup.CryptSetup.luksFormat方法的典型用法代码示例。如果您正苦于以下问题:Python CryptSetup.luksFormat方法的具体用法?Python CryptSetup.luksFormat怎么用?Python CryptSetup.luksFormat使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在pycryptsetup.CryptSetup的用法示例。


在下文中一共展示了CryptSetup.luksFormat方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: luks_format

# 需要导入模块: from pycryptsetup import CryptSetup [as 别名]
# 或者: from pycryptsetup.CryptSetup import luksFormat [as 别名]
def luks_format(device,
                passphrase=None,
                cipher=None, key_size=None, key_file=None):
    if not passphrase:
        raise ValueError("luks_format requires passphrase")

    cs = CryptSetup(device=device, yesDialog = askyes, logFunc = dolog, passwordDialog = askpassphrase)

    #None is not considered as default value and pycryptsetup doesn't accept it
    #so we need to filter out all Nones
    kwargs = {}

    # Split cipher designator to cipher name and cipher mode
    cipherType = None
    cipherMode = None
    if cipher:
        cparts = cipher.split("-")
        cipherType = "".join(cparts[0:1])
        cipherMode = "-".join(cparts[1:])
    
    if cipherType: kwargs["cipher"]  = cipherType
    if cipherMode: kwargs["cipherMode"]  = cipherMode
    if   key_size: kwargs["keysize"]  = key_size

    rc = cs.luksFormat(**kwargs)
    if rc:
        raise CryptoError("luks_format failed for '%s'" % device)

    # activate first keyslot
    cs.addKeyByVolumeKey(newPassphrase = passphrase)
    if rc:
        raise CryptoError("luks_add_key_by_volume_key failed for '%s'" % device)
开发者ID:mattias-ohlsson,项目名称:anaconda,代码行数:34,代码来源:crypto.py

示例2: luks_format

# 需要导入模块: from pycryptsetup import CryptSetup [as 别名]
# 或者: from pycryptsetup.CryptSetup import luksFormat [as 别名]
def luks_format(device,
                passphrase=None, key_file=None,
                cipher=None, key_size=None):
    cs = CryptSetup(yesDialog = askyes, logFunc = dolog)
    key_file_unlink = False

    if passphrase:
        key_file = cs.prepare_passphrase_file(passphrase)
        key_file_unlink = True
    elif key_file and os.path.isfile(key_file):
        pass
    else:
        raise ValueError("luks_format requires either a passphrase or a key file")

    #None is not considered as default value and pycryptsetup doesn't accept it
    #so we need to filter out all Nones
    kwargs = {}
    kwargs["device"] = device
    if   cipher: kwargs["cipher"]  = cipher
    if key_file: kwargs["keyfile"] = key_file
    if key_size: kwargs["keysize"] = key_size

    rc = cs.luksFormat(**kwargs)
    if key_file_unlink: os.unlink(key_file)

    if rc:
        raise CryptoError("luks_format failed for '%s'" % device)
开发者ID:274914765,项目名称:python,代码行数:29,代码来源:crypto.py

示例3: luks_format

# 需要导入模块: from pycryptsetup import CryptSetup [as 别名]
# 或者: from pycryptsetup.CryptSetup import luksFormat [as 别名]
def luks_format(device, passphrase, cipher=None, key_size=None, key_file=None, min_entropy=0):
    cs = CryptSetup(device=device, yesDialog=yesDialog, logFunc=logFunc, passwordDialog=passwordDialog)
    kwargs = {}

    cipherType, cipherMode = None, None
    if cipher:
        cparts = cipher.split("-")
        cipherType = "".join(cparts[0:1])
        cipherMode = "-".join(cparts[1:])

    if cipherType:
        kwargs["cipher"] = cipherType
    if cipherMode:
        kwargs["cipherMode"] = cipherMode
    if key_size:
        kwargs["keysize"] = key_size

    if min_entropy > 0:
        while get_current_entropy() < min_entropy:
            time.sleep(1)

    rc = cs.luksFormat(**kwargs)
    if rc:
        return rc
    rc = cs.addKeyByVolumeKey(newPassphrase=passphrase)
    return rc if rc else 0
开发者ID:kidaa,项目名称:arkos,代码行数:28,代码来源:crypto.py


注:本文中的pycryptsetup.CryptSetup.luksFormat方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。