관리-도구
편집 파일: des.cpython-39.opt-1.pyc
a f�Wc�� � @ s� d Z ddlZddlmZ ddlmZmZmZmZmZ ddgZ dZ dZd Zd Z dZdZd a a aad d� Zdd� Ze�d�Zdd� Zdd� Zdd� Zdd� Zeddd�Zdd� Zdd� Zd#d d�Zd$d!d"�Z dS )%a� passlib.crypto.des -- DES block encryption routines History ======= These routines (which have since been drastically modified for python) are based on a Java implementation of the des-crypt algorithm, found at `<http://www.dynamic.net.au/christos/crypt/UnixCrypt2.txt>`_. The copyright & license for that source is as follows:: UnixCrypt.java 0.9 96/11/25 Copyright (c) 1996 Aki Yoshida. All rights reserved. Permission to use, copy, modify and distribute this software for non-commercial or commercial purposes and without fee is hereby granted provided that this copyright notice appears in all copies. --- Unix crypt(3C) utility @version 0.9, 11/25/96 @author Aki Yoshida --- modified April 2001 by Iris Van den Broeke, Daniel Deville --- Unix Crypt. Implements the one way cryptography used by Unix systems for simple password protection. @version $Id: UnixCrypt2.txt,v 1.1.1.1 2005/09/13 22:20:13 christos Exp $ @author Greg Wilkins (gregw) The netbsd des-crypt implementation has some nice notes on how this all works - http://fxr.googlebit.com/source/lib/libcrypt/crypt.c?v=NETBSD-CURRENT � N)�exc)�join_byte_values�byte_elem_value�iranger � int_types�expand_des_key�des_encrypt_blocki��� l ����l ���� l �~�}�{�w l l ���s�g c C sP d} d}d}| |f||f||f||f||f||f||f||ffa dadadadS )z3delay loading tables until they are actually needed))r r � r � r � r � r � $ r � r � $ r )r � � l � l � l � @ l @ l @ l @ l D l D l D l D )r r �@ r � r �@ r � r �@ r � r �@ r )r � � @l @� l l Hl H� l l @ l @ l l l H l H )r r � r � r! � r"