1 ini文件处理
创建ini文件
config = configparser.ConfigParser()
config.read(AUTH_STATUS_FILE)
config.add_section("authorization")
config.set("authorization", "file_status", "normal")    
config.set("authorization", "auth_status", "normal")
config.set("authorization", "remain_time", "100")
config.add_section("systime")
config.set("systime", "file_status", "normal")
config.set("systime", "time_status", "normal")
config.write(open(AUTH_STATUS_FILE, "w"))  
从字符串解析ini文件
config = configparser.ConfigParser(allow_no_value=True)
config.read_string(auth_info.decode())
auth_id = config.get('auth_id', 'id')
start_time = config.get('auth_date', 'start')
end_time = config.get('auth_date', 'end')

2 时间转换与比较
tStart = time.strptime(start_time, "%Y%m%d%H%M%S")
tEnd = time.strptime(end_time, "%Y%m%d%H%M%S")
dStart = datetime.datetime(* tStart[:6])
dEnd = datetime.datetime(* tEnd[:6])
dCurrent = datetime.datetime.now()

3 文件读写
with open(FACEMP_AUTH_OUT, 'r') as f:
    auth_crypt_info = f.read()
    
4 把python源码编译为pyc
py_compile.compile('./facemp_check.py')

5 生成rsa公私钥对
from M2Crypto import RSA,BIO
rsa = RSA.gen_key(1024, 3, lambda *agr:None)
rsa.save_pub_key('facemp_pub.key')
rsa.save_key('facemp_pri.key', None)

6 私钥加密
privkey = M2Crypto.RSA.load_key('facemp_pri.key')
encrypted = privkey.private_encrypt(message, M2Crypto.RSA.pkcs1_padding)

7 公钥解密
pubkey = M2Crypto.RSA.load_pub_key(FACEMP_PUB_KEY)
auth_info = pubkey.public_decrypt(auth_crypt_info, M2Crypto.RSA.pkcs1_padding)

项目里用到的python知识点的更多相关文章

  1. 在Android Studio和Android Eclipse 更改现有项目里的SDK版本

    一,在Eclipse下改项目里的SDK的版本方法有几种,都比较简单:1.右键单击项目--->properties---->Resource----->Android在Project ...

  2. 开发工具|给你的项目买份保险:Python虚拟环境

    读完需要 9 分钟 1. 什么是虚拟环境? 虚拟环境的意义,就如同 虚拟机 一样,它可以实现不同环境中Python依赖包相互独立,互不干扰.这在一定程度的意义上,给了我们的项目一份很有力的保障.在这里 ...

  3. python 知识点补充

    python 知识点补充 简明 python 教程 r 或 R 来指定一个 原始(Raw) 字符串 Python 是强(Strongly)面向对象的,因为所有的一切都是对象, 包括数字.字符串与 函数 ...

  4. Python知识点汇总

    */ * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名:text.cpp * 作者:常轩 * 微信公众号:Worldhe ...

  5. JS/TS项目里的Module都是什么?

    摘要:在日常进行JS/TS项目开发的时候,经常会遇到require某个依赖和module.exports来定义某个函数的情况.就很好奇Modules都代表什么和有什么作用呢. 本文分享自华为云社区&l ...

  6. 如何把Spring制作成jar包,然后在项目里运行。

    第一步:首先我们先把Spring的代码准备好.如图一 (图1). 第二步:我们在桌面新建一个文件夹,如图二 (图2). 我们要在这个文件夹里新建两个夹,一个文件夹是你项目的包名,也就是我们图1的aop ...

  7. ANDROID STDUIO 项目里的R文件突然丢失的解决办法N种之一

    刚刚项目里的R文件突然挂了,清理项目,关闭重开Studio,都不能解决.快没折了. 然后只好在项目上右击,看看有没有解决的办法.发现有个 Make Module ,姑且试试吧. 结果,竟然修复了.这是 ...

  8. 在asp.net mvc4项目里bootstrap datetimepicker控件的使用

    前段时间写了一篇关于调用阿里大于的短信接口来开发例会短信群发通知功能的文章http://www.cnblogs.com/zhouyuangan/p/apicall_1.html,其中的例会时间是需求中 ...

  9. 项目里的jquery.min.js错误

    项目里的jquery.min.js报一系列 - Missing semicolon - Missing semicolon - Missing semicolon - Missing semicolo ...

随机推荐

  1. 装饰器--decorator2

    装饰器加参数 import time def timer(func): # timer(test2) func = test2 def deco(): start_time = time.time() ...

  2. js控制treeview默认展开

    bootStrapTreeview 在bootstrap的treeview官网,可以找到这个方法,用js控制可以写成:$('#xxx').treeview('collapseNode',{silent ...

  3. CSS3方法总汇

    PS:CSS3的3D和我做研发时的3D不一样他们只能旋转180度  横为X竖为Z高为Y transfrom:2D3D转换 rotareX:绕着X轴旋转 rotareY(-180deg):绕着Y轴旋转- ...

  4. hdu 1907 John (anti—Nim)

    John Time Limit: 5000/1000 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others)http://acm.h ...

  5. 搜索:DLX算法

    精确覆盖问题:在一个0-1矩阵中,选定部分行,使得每一列都有且只有一个1.求解一种选法 舞蹈链(Dance Link),也就是一个循环十字链表,可以快速的删掉和恢复某行某列 结合了舞蹈链的搜索就称作D ...

  6. ItemCF_基于物品的协同过滤

    ItemCF_基于物品的协同过滤 1.    概念 2.    原理 如何给用户推荐? 给用户推荐他没有买过的物品--103 3.    java代码实现思路 数据集: 第一步:构建物品的同现矩阵 第 ...

  7. JVM学习四:JVM之类加载器之初始化分析

    在经过了前面的加载  和 连接分析之后,这一节我们进入重要的初始化分析过程: 一.认识初始化 初始化:这个似乎与上面的初始化为默认值有点矛盾,我们再看一遍:为累的静态变量赋予正确的初始值,上面是赋予默 ...

  8. JS操作CSS随机改变网页背景

    今天有个朋友在weibo上问我可不可以用JS和CSS让页面每次刷新随机产生一张背景图,当然我的回答是可以的.具体可以这样做: 1.用JS定义一个图片数组,里面存放你想要随机展示的图片 1 2 3 4 ...

  9. 集合框架小结-Collection

    1.集合框架作为处理对象的容器存在,基本接口是Collection,相对于数组而言的话,集合框架只能存储对象,但是长度是可变的.集合框架的关系图如下: 主要的内容是list.set.map, List ...

  10. 解决ajax chrome禁止本地浏览时加载本地其他文件的方法

    在chrome快捷键右键--属性 “ --allow-file-access-from-files ”,前面用空格隔开.然后应用--确定.