簡體   English   中英

C#確定是否對SQLite數據庫文件進行密碼加密

[英]C# Determine if a SQLite database file is password encrypted

是的,我知道可以嘗試連接到SQLite數據庫,如果需要密碼,則可以使用try-catch。 這不是干凈的代碼。 我正在尋找一種更聰明的方法來確定.sqlite文件是否已加密,然后再嘗試將其連接。 我正在為該項目使用System.Data.sqlite dll。

您將必須檢查SQLite主數據庫文件本身。

摘自SQLite數據庫文件格式

1.2.4每頁保留字節

SQLite能夠在每個頁面的末尾留出少量額外的字節供擴展使用。 例如,SQLite加密擴展使用這些額外的字節來存儲與每個頁面關聯的現時和/或加密校驗和。

您唯一的選擇是try-catch。 由於整個數據庫文件(包括元數據) 都是經過加密的 ,因此沒有可測試的特定位。 但是我認為在處理不正確或丟失的密碼時,try-catch是合適的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM