小编Abg*_*gan的帖子

urlsafe_b64encode总是以'='结尾?:

我认为这一定是一个愚蠢的问题,但为什么urlsafe_b64encode()的结果总是以'='结尾?'='不是网址安全吗?

from random import getrandbits
from base64 import urlsafe_b64encode
from hashlib import sha256
from time import sleep

def genKey():
   keyLenBits = 64
   a = str(getrandbits(keyLenBits))
   b = urlsafe_b64encode(sha256(a).digest())
   print b

while 1:
   genKey()
   sleep(1)
Run Code Online (Sandbox Code Playgroud)

输出:

DxFOVxWvvzGdOSh2ARkK-2XPXNavnpiCkD6RuKLffvA=
xvA99ZLBrLvtf9-k0-YUFcLsiKl8Q8KmkD7ahIqPZ5Y=
jYbNK7j62KCBA5gnoiSpM2AGOPxmyQTIJIl_wWdOwoY=
CPIKkXPfIX4bd8lQtUj1dYG3ZOBxmZTMkVpmR7Uvu4s=
HlTs0tBW805gaxfMrq3OPOa6Crg7MsLSLnqe-eX0JEA=
FKRu0ePZEppHsvACWYssL1b2uZhjy9UU5LI8sWIqHe8=
aY_kVaT8kjB4RRfp3S6xG2vJaL0vAwQPifsBcN1LYvo=
6Us3XsewqnEcovMb5EEPtf4Fp4ucWfjPVso-UkRuaRc=
_vAI943yOWs3t2F6suUGy47LJjQsgi_XLiMKhYZnm9M=
CcUSXVqPNT_eb8VXasFXhvNosPOWQQWjGlipQp_68aY=
Run Code Online (Sandbox Code Playgroud)

python hash base64

8
推荐指数
1
解决办法
4750
查看次数

如何检查是否可以在MS XP/Vista上的给定目录中创建文件?

我有一个代码,用于在用户指定的目录中创建文件.用户可以指向无法创建文件的目录,但可以重命名.

我已经为测试目的创建了目录,让我们调用它C:\foo.

我有以下权限C:\foo:

  • 遍历目录/执行文件
  • 删除子文件夹和文件
  • 删除
  • 读取权限
  • 更改权限
  • 取得所有权

我没有以下任何权限C:\foo:

  • 完全控制
  • 文件创建
  • 文件夹创建

到目前为止,我尝试了以下方法:


os.access('C:\foo', os.W_OK) == True

st = os.stat('C:\foo')
mode = st[stat.ST_MODE]
mode & stat.S_IWRITE == True

C:\foo

C:\foo

我相信这是因为我可以重命名文件夹,所以它对我来说是多变的.但它的内容 - 不是.

有没有人知道如果当前用户有权在该目录中创建文件,我如何编写将检查给定目录的代码?

简而言之 - 我想检查当前用户是否具有给定文件夹名称的文件创建文件夹创建权限.

编辑:需要这些代码来自'Certified for Windows Vista'计划的第3号测试案例,其中指出:

  1. 应用程序不得允许Least-Privileged用户将任何文件保存到Windows系统目录以通过此测试用例.

这应该被理解为"应​​用程序可能会尝试在Windows系统目录中保存文件,但不应该在失败时崩溃吗?" 或者更确切地说"应用程序必须在尝试保存文件之前执行安全检查?"

我是否应该因为Windows Vista本身不允许Least-Privileged用户在%WINDIR%中保存任何文件而停止打扰?

python windows permissions winapi windows-vista

6
推荐指数
1
解决办法
3248
查看次数

标签 统计

python ×2

base64 ×1

hash ×1

permissions ×1

winapi ×1

windows ×1

windows-vista ×1