如何计算sqlite数据库文件的散列而不会造成损害

马修·莫森(Matthew Moisen)

我有一个类似于以下的函数,我想将其用于计算sqlite数据库文件的哈希,以便将其与我为检测任何更改所做的上次备份进行比较。

DEF get_hash(FILE_PATH):
    #http://stackoverflow.com/a/3431838/1391717 
    hash_sha1 = hashlib.sha1
    张开(FILE_PATH, “RB”)为f:
        为块在ITER(拉姆达:f.read(4096) ,b“”):
            hash_sha1.update(chunk)

    返回hash_sha1.hexdigest()

我计划锁定数据库,因此在计算哈希值时没有人可以写入数据库。我这样做有可能造成任何伤害吗?

// http://codereview.stackexchange.com/questions/78643/create-sqlite-backups 
connection = sqlite3.connect(database_file)
cursor = connection.cursor()
cursor.execute(“ begin立即开始”)

db_hash = get_hash(args 。数据库)
西蒙

sqlite3数据库文件可以并且可以被许多不同的读者同时读取。在这方面,与sqlite3并发没有问题。sqlite3固有的问题涉及到写入文件,仅允许一个写入器。

所以,如果您只阅读您的罚款。

如果您打算锁定数据库并成功实现该目的,那么在计算哈希值时,您将成为具有独占访问权的写程序。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何恢复已删除的SQLite数据库文件?

来自分类Dev

Jar文件无法读取sqlite数据库文件

来自分类Dev

Android在SQLite数据库文件中获取Sharedpreferences

来自分类Dev

SQLite问题:数据库文件被锁定

来自分类Dev

SQLite 数据库文件已锁定

来自分类Dev

如何通过UCanAccess访问远程计算机上的数据库文件?

来自分类Dev

如何检测sqlite3是否创建了数据库文件?

来自分类Dev

如何在DB Browser中为SQLite打开sqflite数据库文件?

来自分类Dev

如何连接到sqlite3数据库文件并获取fastapi中的内容?

来自分类Dev

如何从Android程序将SQLite数据库文件上传到FTP服务器

来自分类Dev

删除本地数据库文件后如何使用sqlite?

来自分类Dev

如何从apk文件获取数据库文件?

来自分类Dev

在Android的SQLite数据库中使用相同的数据库文件插入不同的表

来自分类Dev

USB调试如何获取数据库文件?

来自分类Dev

如何使用SQLiteStudio创建数据库文件

来自分类Dev

USB调试如何获取数据库文件?

来自分类Dev

如何查看dconf数据库文件备份的内容?

来自分类Dev

如何将SQLite 3.7 WAL文件的内容合并到主数据库文件中

来自分类Dev

如何在Java中读取和写入SQLite数据库文件(制作jar文件后)

来自分类Dev

如何隐藏SQLite数据库文件,以便在iTunes文件共享中看不到它们

来自分类Dev

如何检查Yii2应用程序中的Web进程是否可以写入sqlite数据库文件?

来自分类Dev

引用XML数据库文件

来自分类Dev

找不到数据库文件

来自分类Dev

打开.gdb数据库文件

来自分类Dev

MySQL加密数据库文件

来自分类Dev

防止复制数据库文件

来自分类Dev

无法打开数据库文件

来自分类Dev

MySQL加密数据库文件

来自分类Dev

SQLiteAssetHelper数据库文件大小

Related 相关文章

  1. 1

    如何恢复已删除的SQLite数据库文件?

  2. 2

    Jar文件无法读取sqlite数据库文件

  3. 3

    Android在SQLite数据库文件中获取Sharedpreferences

  4. 4

    SQLite问题:数据库文件被锁定

  5. 5

    SQLite 数据库文件已锁定

  6. 6

    如何通过UCanAccess访问远程计算机上的数据库文件?

  7. 7

    如何检测sqlite3是否创建了数据库文件?

  8. 8

    如何在DB Browser中为SQLite打开sqflite数据库文件?

  9. 9

    如何连接到sqlite3数据库文件并获取fastapi中的内容?

  10. 10

    如何从Android程序将SQLite数据库文件上传到FTP服务器

  11. 11

    删除本地数据库文件后如何使用sqlite?

  12. 12

    如何从apk文件获取数据库文件?

  13. 13

    在Android的SQLite数据库中使用相同的数据库文件插入不同的表

  14. 14

    USB调试如何获取数据库文件?

  15. 15

    如何使用SQLiteStudio创建数据库文件

  16. 16

    USB调试如何获取数据库文件?

  17. 17

    如何查看dconf数据库文件备份的内容?

  18. 18

    如何将SQLite 3.7 WAL文件的内容合并到主数据库文件中

  19. 19

    如何在Java中读取和写入SQLite数据库文件(制作jar文件后)

  20. 20

    如何隐藏SQLite数据库文件,以便在iTunes文件共享中看不到它们

  21. 21

    如何检查Yii2应用程序中的Web进程是否可以写入sqlite数据库文件?

  22. 22

    引用XML数据库文件

  23. 23

    找不到数据库文件

  24. 24

    打开.gdb数据库文件

  25. 25

    MySQL加密数据库文件

  26. 26

    防止复制数据库文件

  27. 27

    无法打开数据库文件

  28. 28

    MySQL加密数据库文件

  29. 29

    SQLiteAssetHelper数据库文件大小

热门标签

归档