12.0 KB
/srv/reproducible-results/archlinuxrb-build-vHGoKbFn/b1/python-pyotp/python-pyotp-2.9.0-1-any.pkg.tar.zst vs.
/srv/reproducible-results/archlinuxrb-build-vHGoKbFn/b2/python-pyotp/python-pyotp-2.9.0-1-any.pkg.tar.zst
11.8 KB
python-pyotp-2.9.0-1-any.pkg.tar
2.26 KB
file list
    
Offset 1, 9 lines modifiedOffset 1, 9 lines modified
1 -rw-r--r--···0·root·········(0)·root·········(0)····10313·2023-12-26·22:03:29.000000·.BUILDINFO1 -rw-r--r--···0·root·········(0)·root·········(0)····10313·2023-12-26·22:03:29.000000·.BUILDINFO
2 -rw-r--r--···0·root·········(0)·root·········(0)·····2564·2023-12-26·22:03:29.000000·.MTREE2 -rw-r--r--···0·root·········(0)·root·········(0)·····2565·2023-12-26·22:03:29.000000·.MTREE
3 -rw-r--r--···0·root·········(0)·root·········(0)······536·2023-12-26·22:03:29.000000·.PKGINFO3 -rw-r--r--···0·root·········(0)·root·········(0)······536·2023-12-26·22:03:29.000000·.PKGINFO
4 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2023-12-26·22:03:29.000000·usr/4 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2023-12-26·22:03:29.000000·usr/
5 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2023-12-26·22:03:29.000000·usr/lib/5 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2023-12-26·22:03:29.000000·usr/lib/
6 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2023-12-26·22:03:29.000000·usr/lib/python3.11/6 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2023-12-26·22:03:29.000000·usr/lib/python3.11/
7 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2023-12-26·22:03:29.000000·usr/lib/python3.11/site-packages/7 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2023-12-26·22:03:29.000000·usr/lib/python3.11/site-packages/
8 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2023-12-26·22:03:29.000000·usr/lib/python3.11/site-packages/pyotp/8 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2023-12-26·22:03:29.000000·usr/lib/python3.11/site-packages/pyotp/
9 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2023-12-26·22:03:29.000000·usr/lib/python3.11/site-packages/pyotp-2.9.0-py3.11.egg-info/9 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2023-12-26·22:03:29.000000·usr/lib/python3.11/site-packages/pyotp-2.9.0-py3.11.egg-info/
Offset 48, 9 lines modifiedOffset 48, 9 lines modified
48 -rw-r--r--···0·root·········(0)·root·········(0)·····4556·2023-12-26·22:03:29.000000·usr/share/doc/python-pyotp/changelog.txt48 -rw-r--r--···0·root·········(0)·root·········(0)·····4556·2023-12-26·22:03:29.000000·usr/share/doc/python-pyotp/changelog.txt
49 -rw-r--r--···0·root·········(0)·root·········(0)····12886·2023-12-26·22:03:29.000000·usr/share/doc/python-pyotp/index.txt49 -rw-r--r--···0·root·········(0)·root·········(0)····12886·2023-12-26·22:03:29.000000·usr/share/doc/python-pyotp/index.txt
50 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2023-12-26·22:03:29.000000·usr/share/licenses/50 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2023-12-26·22:03:29.000000·usr/share/licenses/
51 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2023-12-26·22:03:29.000000·usr/share/licenses/python-pyotp/51 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2023-12-26·22:03:29.000000·usr/share/licenses/python-pyotp/
52 -rw-r--r--···0·root·········(0)·root·········(0)·····1174·2023-12-26·22:03:29.000000·usr/share/licenses/python-pyotp/LICENSE52 -rw-r--r--···0·root·········(0)·root·········(0)·····1174·2023-12-26·22:03:29.000000·usr/share/licenses/python-pyotp/LICENSE
53 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2023-12-26·22:03:29.000000·usr/share/man/53 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2023-12-26·22:03:29.000000·usr/share/man/
54 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2023-12-26·22:03:29.000000·usr/share/man/man1/54 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2023-12-26·22:03:29.000000·usr/share/man/man1/
55 -rw-r--r--···0·root·········(0)·root·········(0)·····5911·2023-12-26·22:03:29.000000·usr/share/man/man1/pyotp.1.gz55 -rw-r--r--···0·root·········(0)·root·········(0)·····5940·2023-12-26·22:03:29.000000·usr/share/man/man1/pyotp.1.gz
56 lrwxrwxrwx···0·root·········(0)·root·········(0)········0·2023-12-26·22:03:29.000000·usr/share/man/man1/python-pyotp.1.gz·->·/usr/share/man/man1/pyotp.1.gz56 lrwxrwxrwx···0·root·········(0)·root·········(0)········0·2023-12-26·22:03:29.000000·usr/share/man/man1/python-pyotp.1.gz·->·/usr/share/man/man1/pyotp.1.gz
2.14 KB
.MTREE
2.13 KB
.MTREE-content
    
Offset 1, 11 lines modifiedOffset 1, 11 lines modified
1 #mtree1 #mtree
2 /set·type=file·uid=0·gid=0·mode=6442 /set·type=file·uid=0·gid=0·mode=644
3 ./.BUILDINFO·time=1703628209.0·size=10313·md5digest=673eb340e5d2f758028b614b0358c9c0·sha256digest=a78d4ac4fe410d36495a19a9faabadfbc42902910cd140d004028f47e2a7e1793 ./.BUILDINFO·time=1703628209.0·size=10313·md5digest=673eb340e5d2f758028b614b0358c9c0·sha256digest=a78d4ac4fe410d36495a19a9faabadfbc42902910cd140d004028f47e2a7e179
4 ./.PKGINFO·time=1703628209.0·size=536·md5digest=7a213fc0af4b54343fda2799bfa12834·sha256digest=d3fcbb1c2e713f3103d6bfe94babe5d973be235e304351e12a1562ebc5f661614 ./.PKGINFO·time=1703628209.0·size=536·md5digest=58fbdcef332dc0b635b6a85d817703c8·sha256digest=1ce060db8a604845b13ff36488a23a671d30c1e37777bc73fe9c71ec5c0452e2
5 /set·mode=7555 /set·mode=755
6 ./usr·time=1703628209.0·type=dir6 ./usr·time=1703628209.0·type=dir
7 ./usr/lib·time=1703628209.0·type=dir7 ./usr/lib·time=1703628209.0·type=dir
8 ./usr/lib/python3.11·time=1703628209.0·type=dir8 ./usr/lib/python3.11·time=1703628209.0·type=dir
9 ./usr/lib/python3.11/site-packages·time=1703628209.0·type=dir9 ./usr/lib/python3.11/site-packages·time=1703628209.0·type=dir
10 /set·mode=64410 /set·mode=644
11 ./usr/lib/python3.11/site-packages/pyotp·time=1703628209.0·mode=755·type=dir11 ./usr/lib/python3.11/site-packages/pyotp·time=1703628209.0·mode=755·type=dir
Offset 53, 9 lines modifiedOffset 53, 9 lines modified
53 ./usr/share/doc/python-pyotp/changelog.txt·time=1703628209.0·size=4556·md5digest=569f18a071d896495896837a6e1fbbb3·sha256digest=ee9a241d0865a7e3a140e15bcf6929282ca0ab2c142fd6beaf770669e11b496d53 ./usr/share/doc/python-pyotp/changelog.txt·time=1703628209.0·size=4556·md5digest=569f18a071d896495896837a6e1fbbb3·sha256digest=ee9a241d0865a7e3a140e15bcf6929282ca0ab2c142fd6beaf770669e11b496d
54 ./usr/share/doc/python-pyotp/index.txt·time=1703628209.0·size=12886·md5digest=b101e09fbadeb0aafd1a32382dd1433c·sha256digest=6adcb6ef20947190c416a22cf109fefca5367017b738be55c1583c3f55f2644254 ./usr/share/doc/python-pyotp/index.txt·time=1703628209.0·size=12886·md5digest=b101e09fbadeb0aafd1a32382dd1433c·sha256digest=6adcb6ef20947190c416a22cf109fefca5367017b738be55c1583c3f55f26442
55 ./usr/share/licenses·time=1703628209.0·mode=755·type=dir55 ./usr/share/licenses·time=1703628209.0·mode=755·type=dir
56 ./usr/share/licenses/python-pyotp·time=1703628209.0·mode=755·type=dir56 ./usr/share/licenses/python-pyotp·time=1703628209.0·mode=755·type=dir
57 ./usr/share/licenses/python-pyotp/LICENSE·time=1703628209.0·size=1174·md5digest=f4889ab24aecac0a410d83c0323f9daf·sha256digest=795885123341458172aad6ebfab31b071cc7b40524929e6901662d5dbbf57ea357 ./usr/share/licenses/python-pyotp/LICENSE·time=1703628209.0·size=1174·md5digest=f4889ab24aecac0a410d83c0323f9daf·sha256digest=795885123341458172aad6ebfab31b071cc7b40524929e6901662d5dbbf57ea3
58 ./usr/share/man·time=1703628209.0·mode=755·type=dir58 ./usr/share/man·time=1703628209.0·mode=755·type=dir
59 ./usr/share/man/man1·time=1703628209.0·mode=755·type=dir59 ./usr/share/man/man1·time=1703628209.0·mode=755·type=dir
60 ./usr/share/man/man1/pyotp.1.gz·time=1703628209.0·size=5911·md5digest=3d6130378c81b1c45594d82d6163b6a5·sha256digest=2dbcce664da2e0360163fe16d5e9012c4b2b3904011c9165eb1aafb8731d6b0b60 ./usr/share/man/man1/pyotp.1.gz·time=1703628209.0·size=5940·md5digest=4b24c8a960b2bced7ee344734708703e·sha256digest=f5676d8857cab821a3444103c7c65d150565604a01690f236ada5be687dcbc7d
61 ./usr/share/man/man1/python-pyotp.1.gz·time=1703628209.0·mode=777·type=link·link=/usr/share/man/man1/pyotp.1.gz61 ./usr/share/man/man1/python-pyotp.1.gz·time=1703628209.0·mode=777·type=link·link=/usr/share/man/man1/pyotp.1.gz
499 B
.PKGINFO
    
Offset 3, 15 lines modifiedOffset 3, 15 lines modified
3 pkgname·=·python-pyotp3 pkgname·=·python-pyotp
4 pkgbase·=·python-pyotp4 pkgbase·=·python-pyotp
5 pkgver·=·2.9.0-15 pkgver·=·2.9.0-1
6 pkgdesc·=·Python·library·for·generating·and·verifying·one-time·passwords6 pkgdesc·=·Python·library·for·generating·and·verifying·one-time·passwords
7 url·=·https://pyotp.readthedocs.io/7 url·=·https://pyotp.readthedocs.io/
8 builddate·=·17036282098 builddate·=·1703628209
9 packager·=·Reproducible·Arch·Linux·tests·<reproducible@archlinux.org>9 packager·=·Reproducible·Arch·Linux·tests·<reproducible@archlinux.org>
10 size·=·11317710 size·=·113206
11 arch·=·any11 arch·=·any
12 license·=·MIT12 license·=·MIT
13 depend·=·python13 depend·=·python
14 makedepend·=·git14 makedepend·=·git
15 makedepend·=·python-setuptools15 makedepend·=·python-setuptools
16 makedepend·=·python-sphinx16 makedepend·=·python-sphinx
17 makedepend·=·python-guzzle-sphinx-theme17 makedepend·=·python-guzzle-sphinx-theme
6.84 KB
usr/share/man/man1/pyotp.1.gz
6.78 KB
pyotp.1
    
Offset 261, 15 lines modifiedOffset 261, 15 lines modified
261 .SS·Versioning261 .SS·Versioning
262 .sp262 .sp
263 This·package·follows·the·\fI\%Semantic·Versioning·2.0.0\fP·standard.·To·control·changes,·it·is263 This·package·follows·the·\fI\%Semantic·Versioning·2.0.0\fP·standard.·To·control·changes,·it·is
264 recommended·that·application·developers·pin·the·package·version·and·manage·it·using·\fI\%pip\-tools\fP·or·similar.·For·library·developers,·pinning·the·major·version·is264 recommended·that·application·developers·pin·the·package·version·and·manage·it·using·\fI\%pip\-tools\fP·or·similar.·For·library·developers,·pinning·the·major·version·is
265 recommended.265 recommended.
266 \fI\%\fP\fI\%\fP\fI\%\fP\fI\%\fP\fI\%\fP.INDENT·0.0266 \fI\%\fP\fI\%\fP\fI\%\fP\fI\%\fP\fI\%\fP.INDENT·0.0
267 .TP267 .TP
268 .B·pyotp.parse_uri(uri:·str)·->·OTP268 .B·pyotp.parse_uri(uri:·\fI\%str\fP)·->·OTP
269 Parses·the·provisioning·URI·for·the·OTP;·works·for·either·TOTP·or·HOTP.269 Parses·the·provisioning·URI·for·the·OTP;·works·for·either·TOTP·or·HOTP.
270 .INDENT·7.0270 .INDENT·7.0
271 .TP271 .TP
272 .B·See·also:272 .B·See·also:
273 \fI\%https://github.com/google/google\-authenticator/wiki/Key\-Uri\-Format\fP273 \fI\%https://github.com/google/google\-authenticator/wiki/Key\-Uri\-Format\fP
274 .UNINDENT274 .UNINDENT
275 .INDENT·7.0275 .INDENT·7.0
Offset 279, 19 lines modifiedOffset 279, 19 lines modified
279 .TP279 .TP
280 .B·Returns280 .B·Returns
281 OTP·object281 OTP·object
282 .UNINDENT282 .UNINDENT
283 .UNINDENT283 .UNINDENT
284 .INDENT·0.0284 .INDENT·0.0
285 .TP285 .TP
286 .B·class·pyotp.totp.TOTP(s:·str,·digits:·int·=·6,·digest:·Any·=·None,·name:·str·|·None·=·None,·issuer:·str·|·None·=·None,·interval:·int·=·30)286 .B·class·pyotp.totp.TOTP(s:·\fI\%str\fP,·digits:·\fI\%int\fP·=·6,·digest:·\fI\%Any\fP·=·None,·name:·\fI\%str\fP·|·\fI\%None\fP·=·None,·issuer:·\fI\%str\fP·|·\fI\%None\fP·=·None,·interval:·\fI\%int\fP·=·30)
287 Handler·for·time\-based·OTP·counters.287 Handler·for·time\-based·OTP·counters.
288 .INDENT·7.0288 .INDENT·7.0
289 .TP289 .TP
290 .B·at(for_time:·int·|·datetime,·counter_offset:·int·=·0)·->·str290 .B·at(for_time:·\fI\%int\fP·|·\fI\%datetime\fP,·counter_offset:·\fI\%int\fP·=·0)·->·\fI\%str\fP
291 Accepts·either·a·Unix·timestamp·integer·or·a·datetime·object.291 Accepts·either·a·Unix·timestamp·integer·or·a·datetime·object.
292 .sp292 .sp
293 To·get·the·time·until·the·next·timecode·change·(seconds·until·the·current·OTP·expires),·use·this·instead:293 To·get·the·time·until·the·next·timecode·change·(seconds·until·the·current·OTP·expires),·use·this·instead:
294 .INDENT·7.0294 .INDENT·7.0
295 .INDENT·3.5295 .INDENT·3.5
296 .sp296 .sp
297 .nf297 .nf
Offset 314, 44 lines modifiedOffset 314, 44 lines modified
314 .TP314 .TP
315 .B·Returns315 .B·Returns
316 OTP·value316 OTP·value
317 .UNINDENT317 .UNINDENT
318 .UNINDENT318 .UNINDENT
319 .INDENT·7.0319 .INDENT·7.0
320 .TP320 .TP
321 .B·now()·->·str321 .B·now()·->·\fI\%str\fP
322 Generate·the·current·time·OTP322 Generate·the·current·time·OTP
323 .INDENT·7.0323 .INDENT·7.0
324 .TP324 .TP
325 .B·Returns325 .B·Returns
326 OTP·value326 OTP·value
327 .UNINDENT327 .UNINDENT
328 .UNINDENT328 .UNINDENT
329 .INDENT·7.0329 .INDENT·7.0
330 .TP330 .TP
331 .B·provisioning_uri(name:·str·|·None·=·None,·issuer_name:·str·|·None·=·None,·image:·str·|·None·=·None)·->·str331 .B·provisioning_uri(name:·\fI\%str\fP·|·\fI\%None\fP·=·None,·issuer_name:·\fI\%str\fP·|·\fI\%None\fP·=·None,·image:·\fI\%str\fP·|·\fI\%None\fP·=·None)·->·\fI\%str\fP
332 Returns·the·provisioning·URI·for·the·OTP.··This·can·then·be332 Returns·the·provisioning·URI·for·the·OTP.··This·can·then·be
333 encoded·in·a·QR·Code·and·used·to·provision·an·OTP·app·like333 encoded·in·a·QR·Code·and·used·to·provision·an·OTP·app·like
334 Google·Authenticator.334 Google·Authenticator.
335 .INDENT·7.0335 .INDENT·7.0
336 .TP336 .TP
337 .B·See·also:337 .B·See·also:
338 \fI\%https://github.com/google/google\-authenticator/wiki/Key\-Uri\-Format\fP338 \fI\%https://github.com/google/google\-authenticator/wiki/Key\-Uri\-Format\fP
339 .UNINDENT339 .UNINDENT
340 .UNINDENT340 .UNINDENT
341 .INDENT·7.0341 .INDENT·7.0
342 .TP342 .TP
343 .B·timecode(for_time:·datetime)·->·int343 .B·timecode(for_time:·\fI\%datetime\fP)·->·\fI\%int\fP
344 Accepts·either·a·timezone·naive·(\fIfor_time.tzinfo·is·None\fP)·or344 Accepts·either·a·timezone·naive·(\fIfor_time.tzinfo·is·None\fP)·or
345 a·timezone·aware·datetime·as·argument·and·returns·the345 a·timezone·aware·datetime·as·argument·and·returns·the
346 corresponding·counter·value·(timecode).346 corresponding·counter·value·(timecode).
347 .UNINDENT347 .UNINDENT
348 .INDENT·7.0348 .INDENT·7.0
349 .TP349 .TP
350 .B·verify(otp:·str,·for_time:·datetime·|·None·=·None,·valid_window:·int·=·0)·->·bool350 .B·verify(otp:·\fI\%str\fP,·for_time:·\fI\%datetime\fP·|·\fI\%None\fP·=·None,·valid_window:·\fI\%int\fP·=·0)·->·\fI\%bool\fP
351 Verifies·the·OTP·passed·in·against·the·current·time·OTP.351 Verifies·the·OTP·passed·in·against·the·current·time·OTP.
352 .INDENT·7.0352 .INDENT·7.0
353 .TP353 .TP
354 .B·Parameters354 .B·Parameters
355 .INDENT·7.0355 .INDENT·7.0
356 .IP·\(bu·2356 .IP·\(bu·2
357 \fBotp\fP·\-\-·the·OTP·to·check·against357 \fBotp\fP·\-\-·the·OTP·to·check·against
Offset 364, 32 lines modifiedOffset 364, 32 lines modified
364 .B·Returns364 .B·Returns
365 True·if·verification·succeeded,·False·otherwise365 True·if·verification·succeeded,·False·otherwise
366 .UNINDENT366 .UNINDENT
367 .UNINDENT367 .UNINDENT
368 .UNINDENT368 .UNINDENT
369 .INDENT·0.0369 .INDENT·0.0
370 .TP370 .TP
371 .B·class·pyotp.hotp.HOTP(s:·str,·digits:·int·=·6,·digest:·Any·=·None,·name:·str·|·None·=·None,·issuer:·str·|·None·=·None,·initial_count:·int·=·0)371 .B·class·pyotp.hotp.HOTP(s:·\fI\%str\fP,·digits:·\fI\%int\fP·=·6,·digest:·\fI\%Any\fP·=·None,·name:·\fI\%str\fP·|·\fI\%None\fP·=·None,·issuer:·\fI\%str\fP·|·\fI\%None\fP·=·None,·initial_count:·\fI\%int\fP·=·0)
372 Handler·for·HMAC\-based·OTP·counters.372 Handler·for·HMAC\-based·OTP·counters.
373 .INDENT·7.0373 .INDENT·7.0
374 .TP374 .TP
375 .B·at(count:·int)·->·str375 .B·at(count:·\fI\%int\fP)·->·\fI\%str\fP
376 Generates·the·OTP·for·the·given·count.376 Generates·the·OTP·for·the·given·count.
377 .INDENT·7.0377 .INDENT·7.0
378 .TP378 .TP
379 .B·Parameters379 .B·Parameters
380 \fBcount\fP·\-\-·the·OTP·HMAC·counter380 \fBcount\fP·\-\-·the·OTP·HMAC·counter
381 .TP381 .TP
382 .B·Returns382 .B·Returns
383 OTP383 OTP
384 .UNINDENT384 .UNINDENT
385 .UNINDENT385 .UNINDENT
386 .INDENT·7.0386 .INDENT·7.0
387 .TP387 .TP
388 .B·provisioning_uri(name:·str·|·None·=·None,·initial_count:·int·|·None·=·None,·issuer_name:·str·|·None·=·None,·image:·str·|·None·=·None)·->·str388 .B·provisioning_uri(name:·\fI\%str\fP·|·\fI\%None\fP·=·None,·initial_count:·\fI\%int\fP·|·\fI\%None\fP·=·None,·issuer_name:·\fI\%str\fP·|·\fI\%None\fP·=·None,·image:·\fI\%str\fP·|·\fI\%None\fP·=·None)·->·\fI\%str\fP
389 Returns·the·provisioning·URI·for·the·OTP.··This·can·then·be389 Returns·the·provisioning·URI·for·the·OTP.··This·can·then·be
390 encoded·in·a·QR·Code·and·used·to·provision·an·OTP·app·like390 encoded·in·a·QR·Code·and·used·to·provision·an·OTP·app·like
391 Google·Authenticator.391 Google·Authenticator.
392 .INDENT·7.0392 .INDENT·7.0
393 .TP393 .TP
394 .B·See·also:394 .B·See·also:
395 \fI\%https://github.com/google/google\-authenticator/wiki/Key\-Uri\-Format\fP395 \fI\%https://github.com/google/google\-authenticator/wiki/Key\-Uri\-Format\fP
Offset 409, 15 lines modifiedOffset 409, 15 lines modified
409 .TP409 .TP
410 .B·Returns410 .B·Returns
411 provisioning·URI411 provisioning·URI
412 .UNINDENT412 .UNINDENT
413 .UNINDENT413 .UNINDENT
414 .INDENT·7.0414 .INDENT·7.0
415 .TP415 .TP
416 .B·verify(otp:·str,·counter:·int)·->·bool416 .B·verify(otp:·\fI\%str\fP,·counter:·\fI\%int\fP)·->·\fI\%bool\fP
417 Verifies·the·OTP·passed·in·against·the·current·counter·OTP.417 Verifies·the·OTP·passed·in·against·the·current·counter·OTP.
418 .INDENT·7.0418 .INDENT·7.0
419 .TP419 .TP
420 .B·Parameters420 .B·Parameters
421 .INDENT·7.0421 .INDENT·7.0
Max diff block lines reached; 2179/6929 bytes (31.45%) of diff not shown.