一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

為何JWT不適合存儲Session

jf_ro2CN3Fa ? 來源:芋道源碼 ? 作者:芋道源碼 ? 2022-11-28 10:23 ? 次閱讀


JSON Web Tokens,又稱 JWT。本文將詳解:為何 JWT 不適合存儲 Session,以及 JWT 引發(fā)的安全隱患。望各位對JWT有更深的理解!

?

原文地址:http://cryto.net/~joepie91/blog/2016/06/13/stop-using-jwt-for-sessions

?

十分不幸,我發(fā)現(xiàn)越來越多的人開始推薦使用 JWT 管理網(wǎng)站的用戶會話(Session)。在本文中,我將說明為何這是個(gè)非常非常不成熟的想法。

為了避免疑惑和歧義,首先定義一些術(shù)語:

  • 無狀態(tài) JWT(Stateless JWT):包含 Session 數(shù)據(jù)的 JWT Token。Session 數(shù)據(jù)將被直接編碼進(jìn) Token 內(nèi)。
  • 有狀態(tài) JWT(Stateful JWT):包含 Session 引用或其 ID 的 JWT Token。Session 數(shù)據(jù)存儲在服務(wù)端。
  • Session token(又稱 Session cookie):標(biāo)準(zhǔn)的、可被簽名的 Session ID,例如各類 Web 框架(譯者注:包括 Laravel)內(nèi)已經(jīng)使用了很久的 Session 機(jī)制。Session 數(shù)據(jù)同樣存儲在服務(wù)端。

需要澄清的是:本文并非挑起「永遠(yuǎn)不要使用 JWT」的爭論 —— 只是想說明 JWT 并不適合作為 Session 機(jī)制,且十分危險(xiǎn)。JWT 在其它方面的確有其用武之地。本文結(jié)尾,我將簡短地介紹一些合理用途。

首先需要說明

很多人錯(cuò)誤地嘗試比較 CookiesJWT。這種對比毫無意義,就像對比內(nèi)存和硬盤一樣。Cookies 是一種存儲機(jī)制,然而 JWT Tokens 是被加密并簽名后的令牌。

它們并不對立 —— 相反,他們可以獨(dú)立或結(jié)合使用。正確的對比應(yīng)當(dāng)是:Session 對比 JWT,以及 Cookies 對比 Local Storage。

在本文中,我將把 JWT Tokens 同 Session 展開對比,并偶爾對比 CookieLocal Storage。這樣的比較才有意義。

基于 Spring Boot + MyBatis Plus + Vue & Element 實(shí)現(xiàn)的后臺管理系統(tǒng) + 用戶小程序,支持 RBAC 動態(tài)權(quán)限、多租戶、數(shù)據(jù)權(quán)限、工作流、三方登錄、支付、短信、商城等功能

  • 項(xiàng)目地址:https://github.com/YunaiV/ruoyi-vue-pro
  • 視頻教程:https://doc.iocoder.cn/video/

JWT 坊間流傳的優(yōu)勢

在人們安利 JWT 時(shí),常常宣揚(yáng)以下幾點(diǎn)好處:

  • 易于水平擴(kuò)展
  • 易于使用
  • 更加靈活
  • 更加安全
  • 內(nèi)置過期時(shí)間功能
  • 無需詢問用戶「本網(wǎng)站使用 Cookies」
  • 防止 CSRF 攻擊
  • 更適用于移動端
  • 適用于阻止 Cookies 的用戶

我將會逐條闡述以上觀點(diǎn)為何是錯(cuò)誤或誤導(dǎo)性的,其中部分解釋可能會有些模糊,這主要是因?yàn)檫@些「好處」的表述本身就比較模糊。

易于水平擴(kuò)展?

這是列表中唯一一條在技術(shù)層面部分正確的「好處」,但前提是你使用的是無狀態(tài) JWT Tokens。然而事實(shí)上,幾乎沒人需要這種橫向擴(kuò)展能力。有很多更簡單的拓展方式,除非你在運(yùn)維像淘寶這樣體量的系統(tǒng),否則根本不需要無狀態(tài)的會話(Stateless sessions)。

一些擴(kuò)展有狀態(tài)會話(Stateful sessions)的例子:

  1. 「在單臺服務(wù)器上運(yùn)行多個(gè)后端進(jìn)程」 :只需在此服務(wù)器上安裝 Redis 服務(wù)用于存儲 Session 即可。
  2. 「運(yùn)行多臺服務(wù)器」 :只需一臺專用的 Redis 服務(wù)器用于存儲 Session 即可。
  3. 「在多集群內(nèi)運(yùn)行多臺服務(wù)器」 :會話保持(又稱:粘滯會話)。

以上所有場景在現(xiàn)有軟件系統(tǒng)內(nèi)都具備良好的支持,你的應(yīng)用需要進(jìn)行特殊處理的可能性基本為零。

或許你在想,應(yīng)當(dāng)為你的應(yīng)用預(yù)留更多調(diào)整空間,以防未來需要某些特殊操作。但實(shí)踐告訴我們,以后再替換 Session 機(jī)制并不困難,唯一的代價(jià)是,在遷移后所有用戶將被強(qiáng)制登出一次。我們沒必要在前期實(shí)現(xiàn) JWT,尤其是考慮到它所帶來的負(fù)面影響。

易于使用?

這個(gè)真沒有。你不得不自行處理 Session 的管理機(jī)制,無論是客戶端還是服務(wù)端。然而標(biāo)準(zhǔn)的 Session cookies 則開箱即用,JWT 并沒有更簡單。

說白了,目前各種開箱即用的框架并沒有自動集成 JWT,需要研發(fā)人員自行處理。

更加靈活?

我暫時(shí)還沒看到有人成功地闡述「JWT 如何更加靈活」。幾乎每個(gè)主流的 Session 實(shí)現(xiàn),都允許你直接把數(shù)據(jù)存儲進(jìn) Session,這跟 JWT 的機(jī)制并沒有差別。據(jù)我所知,這只是個(gè)流行語罷了。

更加安全?

一大批人認(rèn)為 JWT Tokens「更加安全」,理由是使用了加密技術(shù)。實(shí)際上,簽名后的 Cookies 比未簽名的 Cookies 同樣更加安全,但這絕不是 JWT 獨(dú)有的,優(yōu)秀的 Session 實(shí)現(xiàn)均使用簽名后的 Cookies(譯者注:例如 Laravel)。

「使用加密技術(shù)」并不能神奇地使某些東西更加安全,它必須服務(wù)于特定目的,并且是針對該目的的有效解決方案。錯(cuò)誤地使用加密反而可能會降低安全性。

另一個(gè)我聽過很多次的對于「更加安全」的論述是「JWT 不使用 Cookies 傳輸 Tokens」。這實(shí)在是太荒謬了,Cookie 只不過是一條 HTTP 頭信息,使用 Cookies 并不會造成任何不安全。事實(shí)上,Cookies 受到特別良好的保護(hù),用于防止惡意的客戶端代碼。

如果擔(dān)心有人攔截掉你的 Session cookies,那你應(yīng)當(dāng)考慮使用 TLS。如果不使用 TLS,任何類型的 Session 機(jī)制都可能被攔截,包括 JWT。

內(nèi)置過期時(shí)間功能?

無意義,又沒什么卵用的特性。在服務(wù)端也能實(shí)現(xiàn)過期控制,有不少 Session 實(shí)現(xiàn)就是這么做的。實(shí)際上,服務(wù)端的過期控制更加合理,這樣你的應(yīng)用就可以清除不再需要的 Session 數(shù)據(jù);若使用無狀態(tài) JWT Tokens 且依賴于它的過期機(jī)制,則無法執(zhí)行此操作。

這個(gè)過期時(shí)間在某些場景實(shí)際上是增加了復(fù)雜度的。

無需詢問用戶「本網(wǎng)站使用 Cookies」?

完全錯(cuò)誤。并沒有什么「Cookies 法律」—— 有關(guān) Cookies 的各種法律實(shí)際上涵蓋了任何類型「對某項(xiàng)服務(wù)的正常運(yùn)行非嚴(yán)格必須的持久性 ID」,任何你能想到的 Session 機(jī)制都包括在內(nèi)。

?

譯者注:然鵝中國并沒有。

?

簡單來說:

  • 若出于系統(tǒng)功能目的使用 Session 或 Token(例如:保持用戶的登錄態(tài)),那么無論怎樣存儲 Session 均無需征得用戶同意。
  • 若出于其他目的使用 Session 或 Token(例如:數(shù)據(jù)分析、追蹤),那么無論怎樣存儲 Session 都需要詢問用戶是否允許。

防止 CSRF 攻擊?

這個(gè)真真的沒有。存儲 JWT Tokens 的方式大概有兩種:

  • 「存入 Cookie」 :仍然易受 CSRF 攻擊,還是需要進(jìn)行特殊處理,保護(hù)其不受攻擊。
  • 「其他地方,例如 Local Storage」 :雖然不易受到 CSRF 攻擊,但你的網(wǎng)站需要 JavaScript 才能正常訪問;并且又引發(fā)了另一個(gè)完全不同,或許更加嚴(yán)重的漏洞。我將在后文詳細(xì)說明。

預(yù)防 CSRF 攻擊唯一的正確方法,就是使用 CSRF Tokens。Session 機(jī)制與此無關(guān)。

更適用于移動端?

毫無根據(jù)。目前所有可用的瀏覽器幾乎都支持 Cookies,因此也支持 Session。同樣,主流的移動端開發(fā)框架以及嚴(yán)謹(jǐn)?shù)?HTTP 客戶端庫都是如此。這根本不是個(gè)問題。

適用于阻止 Cookies 的用戶?

不太可能。用戶通常會阻止任何意義上的持久化數(shù)據(jù),而不是只禁止 Cookies。例如,Local Storage 以及任何能夠持久化 Session 的存儲機(jī)制(無論是否使用 JWT)。不管你出于多么簡單的目的使用 JWT 都無濟(jì)于事,這是另一個(gè)完全獨(dú)立的問題了。另外,試圖讓身份認(rèn)證過程在沒有 Cookies 的情況下正常進(jìn)行,基本沒戲。

最重要的是,禁用掉所有 Cookies 的多數(shù)用戶都明白這會導(dǎo)致身份認(rèn)證無法使用,他們會單獨(dú)解鎖那些他們比較關(guān)心的站點(diǎn)。這并不是你 —— 一個(gè) Web 開發(fā)者應(yīng)當(dāng)解決的問題。更好的方案是,向你的用戶們詳細(xì)地解釋為何你的網(wǎng)站需要 Cookies 才能使用。

基于 Spring Cloud Alibaba + Gateway + Nacos + RocketMQ + Vue & Element 實(shí)現(xiàn)的后臺管理系統(tǒng) + 用戶小程序,支持 RBAC 動態(tài)權(quán)限、多租戶、數(shù)據(jù)權(quán)限、工作流、三方登錄、支付、短信、商城等功能

  • 項(xiàng)目地址:https://github.com/YunaiV/yudao-cloud
  • 視頻教程:https://doc.iocoder.cn/video/

JWT 的劣勢

以上,我已經(jīng)對常見的誤解做了說明,以及為什么它們是錯(cuò)誤的。你或許在想:「這好像也沒什么大不了的,即便 JWT 無法帶來任何好處,但也不會造成什么影響」,那你真是大錯(cuò)特錯(cuò)了。

使用 JWT 作為 Session 機(jī)制存在很多缺點(diǎn),其中一部分會造成嚴(yán)重的安全問題。

更費(fèi)空間

JWT Tokens 實(shí)際上并不「小」。尤其是使用無狀態(tài) JWT 時(shí),所有的數(shù)據(jù)將會被直接編碼進(jìn) Tokens 內(nèi),很快將會超過 Cookies 或 URL 的長度限制。你可能在想將它們存儲到 Local Storage,然而...

更不安全

若將 JWT Tokens 存儲到 Cookies 內(nèi),那么安全性與其他 Session 機(jī)制無異。但如果你將 JWT 存儲至其它地方,會導(dǎo)致一個(gè)新的漏洞,詳見https://blog.prevoty.com/does-jwt-put-your-web-app-at-risk,尤其是「Storing sessions」這一部分。

?

Local Storage,一個(gè) HTML5 內(nèi)很棒的功能,使瀏覽器支持 Key/Value 存儲。所以我們應(yīng)當(dāng)將 JWT Tokens 存儲到 Local Storage 嗎?考慮到這些 Tokens 可能越來越大,或許會很有用。Cookies 通常在 4k 左右的存儲時(shí)比較占優(yōu)勢,對于較大的 Tokens,Cookies 可能無法勝任,而 Local Storage 或許成了明確的解決方案。然而,Local Storage 并沒有提供任何類似 Cookies 的安全措施。LocalStorage 與 Cookies 不同,并不會在每次請求時(shí)發(fā)送存儲的數(shù)據(jù)。獲取數(shù)據(jù)的唯一方法是使用 JavaScript,這意味著任何攻擊者注入的 JavaScript 腳本只需通過內(nèi)容安全策略檢查,就能任意訪問或泄露數(shù)據(jù)。不光是這樣,JavaScript 并不在意或追蹤數(shù)據(jù)是否通過 HTTPS 發(fā)送。就 JavaScript 而言,它就只是個(gè)數(shù)據(jù)而已,瀏覽器會像操作其它數(shù)據(jù)一樣來處理它。在歷代工程師們經(jīng)歷了各種麻煩之后,終于能夠確保沒有人可以惡意接觸到我們的 Cookies,然而我們卻試圖忽略這些經(jīng)驗(yàn)。這對我來說似乎是在退步。

?

簡單來說,「使用 Cookies 并不是可選的」 ,無論你是否采用 JWT。

無法單獨(dú)銷毀

還有更多安全問題。不像 Sessions 無論何時(shí)都可以單獨(dú)地在服務(wù)端銷毀。無狀態(tài) JWT Tokens 無法被單獨(dú)的銷毀。根據(jù) JWT 的設(shè)計(jì),無論怎樣 Tokens 在過期前將會一直保持有效。舉個(gè)例子,這意味著在檢測到攻擊時(shí),你卻不能銷毀攻擊者的 Session。同樣,在用戶修改密碼后,也無法銷毀舊的 Sessions。

對此,我們幾乎無能為力,除非重新構(gòu)建復(fù)雜且有狀態(tài)(Stateful)的基礎(chǔ)設(shè)施來明確地檢測或拒絕特定 Session,否則將無法結(jié)束會話。但這完全違背了使用無狀態(tài) JWT Tokens 的最初目的。

數(shù)據(jù)延遲

與上文的安全問題類似,還有另一個(gè)潛在的安全隱患。就像緩存,在無狀態(tài) Tokens 內(nèi)存儲的數(shù)據(jù)最終會「過時(shí)」,不再反映數(shù)據(jù)庫內(nèi)最新的數(shù)據(jù)。

這意味著,Tokens 內(nèi)保留的可能是過期的信息,例如:用戶在個(gè)人信息頁面修改過的舊 URL。更嚴(yán)肅點(diǎn)講,也可能是個(gè)具備 admin 權(quán)限的 Token,即使你已經(jīng)廢除了 admin 權(quán)限。因?yàn)闊o法銷毀這些 Tokens,所以面對需要移除的管理員權(quán)限,除非關(guān)閉整個(gè)系統(tǒng),別無他法。

實(shí)現(xiàn)庫缺乏生產(chǎn)環(huán)境驗(yàn)證或壓根不存在

你或許在想,以上的這些問題都是圍繞著「無狀態(tài) JWT」展開的,這種說法大部分情況是對的。然而,使用有狀態(tài) Tokens 與傳統(tǒng)的 Session cookies 基本上是等效的... 但卻缺乏生產(chǎn)環(huán)境的大量驗(yàn)證。

現(xiàn)存的 Session 實(shí)現(xiàn)(例如適用于 Express 的 express-sessionhttps://github.com/expressjs/sessio)已經(jīng)被用于生產(chǎn)環(huán)境很多很多年,它們的安全性也經(jīng)過了大量的改良。倘若使用 JWT 作為 Session cookies 的臨時(shí)替代品,你將無法享受到這些好處,并且必須不斷改進(jìn)自己的實(shí)現(xiàn)(在此過程中很容易引入漏洞),或使用第三方的實(shí)現(xiàn),盡管還沒有在真實(shí)世界里大量應(yīng)用。

?

譯者注:實(shí)際上,Laravel Passport 便是使用類似「有狀態(tài) JWT」的方式來存儲 OAuth Access Token。幸運(yùn)的是,Passport 已經(jīng)有不少實(shí)際應(yīng)用,且不完全依賴于 JWT。

?

結(jié)論

無狀態(tài) JWT Tokens 無法被單獨(dú)地銷毀或更新,取決于你如何存儲,可能還會導(dǎo)致長度問題、安全隱患。有狀態(tài) JWT Tokens 在功能方面與 Session cookies 無異,但缺乏生產(chǎn)環(huán)境的驗(yàn)證、經(jīng)過大量 Review 的實(shí)現(xiàn),以及良好的客戶端支持。

除非,你工作在像 BAT 那樣規(guī)模的公司,否則沒什么使用 JWT 作為 Session 機(jī)制的理由。還是直接用 Session 吧。

所以... JWT 適合做什么?

在本文之初,我就提到 JWT 雖然不適合作為 Session 機(jī)制,但在其它方面的確有它的用武之地。該主張依舊成立,JWT 特別有效的使用例子通常是作為一次性的授權(quán)令牌。

引用JSON Web Token specification(https://tools.ietf.org/html/rfc7519):

?

JSON Web Token (JWT) is a compact, URL-safe means of representing claims to be transferred between two parties. [...] enabling the claims to be digitally signed or integrity protected with a Message Authentication Code (MAC) and/or encrypted.

?

在此上下文中,「Claim」可能是一條「命令」,一次性的認(rèn)證,或是基本上能夠用以下句子描述的任何情況:

?

你好,服務(wù)器 B,服務(wù)器 A 告訴我我可以 < ...Claim... >,這是我的證據(jù):< ...密鑰... >。

?

舉個(gè)例子,你有個(gè)文件服務(wù),用戶必須認(rèn)證后才能下載文件,但文件本身存儲在一臺完全分離且無狀態(tài)的「下載服務(wù)器」內(nèi)。在這種情況下,你可能想要「應(yīng)用服務(wù)器(服務(wù)器 A)」頒發(fā)一次性的「下載 Tokens」,用戶能夠使用它去「下載服務(wù)器(服務(wù)器 B)」獲取需要的文件。

以這種方式使用 JWT,具備幾個(gè)明確的特性:

  • Tokens 生命期較短。它們只需在幾分鐘內(nèi)可用,讓客戶端能夠開始下載。
  • Tokens 僅單次使用。應(yīng)用服務(wù)器應(yīng)當(dāng)在每次下載時(shí)頒發(fā)新的 Token。所以任何 Token 只用于一次請求就會被拋棄,不存在任何持久化的狀態(tài)。
  • 應(yīng)用服務(wù)器依舊使用 Sessions。僅僅下載服務(wù)器使用 Tokens 來授權(quán)每次下載,因?yàn)樗恍枰魏纬志没癄顟B(tài)。

正如以上你所看到的,結(jié)合 Sessions 和 JWT Tokens 有理有據(jù)。它們分別擁有各自的目的,有時(shí)候你需要兩者一起使用。只是不要把 JWT 用作 「持久的、長期的」 數(shù)據(jù)就好。



審核編輯 :李倩


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 服務(wù)器
    +關(guān)注

    關(guān)注

    12

    文章

    9603

    瀏覽量

    87022
  • Session
    +關(guān)注

    關(guān)注

    0

    文章

    14

    瀏覽量

    10090

原文標(biāo)題:別再使用 JWT 作為 Session 系統(tǒng)!問題重重且很危險(xiǎn)。

文章出處:【微信號:芋道源碼,微信公眾號:芋道源碼】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    為何工程塑料不適合打印圓弧形模型?

    不適合打印圓形結(jié)構(gòu)或復(fù)雜曲面模型,JLC3D小編建議大家選擇尼龍或樹脂材料,這兩種材料在打印弧面時(shí)表現(xiàn)更佳,能有效減少層紋,提升表面光滑度。
    發(fā)表于 04-07 15:31

    ads1602不適合采集交流信號嗎?

    數(shù)據(jù)表 fugure 47是階躍響應(yīng)圖,說明直流信號在經(jīng)過51次準(zhǔn)換之后才能得到正確結(jié)果。這個(gè)特性是否說明 這個(gè)芯片只適合采集直流信號,不適合采集交流信號。 采集直流信號的時(shí)間也很長,需要51次
    發(fā)表于 02-14 08:26

    ADS1298進(jìn)行數(shù)據(jù)采集時(shí),用網(wǎng)上下載的例程,始終進(jìn)不去中斷是怎么回事?

    當(dāng)外接心電信號發(fā)生器或者將輸入端短接時(shí),直接點(diǎn)擊run均不能進(jìn)入中斷,但是執(zhí)行set pcto cursor時(shí)可以進(jìn)去,不明白是怎么回事?是例程不適合我這個(gè)板子還是別的,例程中的NEW_PG_BOARD,我這個(gè)不知道是不適合
    發(fā)表于 02-11 08:36

    為什么∑-? ADC不適合用于輸入通道間的快速切換 ( 多路復(fù)用 )場合使用?

    為什么∑-? ADC 不適合用于輸入通道間的快速切 換 ( 多路復(fù)用 )場合使用
    發(fā)表于 01-10 06:35

    先鋒派能不能跑NAS捏?

    各位大佬有沒有跑NAS的經(jīng)驗(yàn),先鋒派適不適合作為NAS使用呢?
    發(fā)表于 12-16 23:27

    虛擬主機(jī)為什么不適合搭建網(wǎng)站?

    不推薦使用虛擬主機(jī)搭建網(wǎng)站的原因主要包括以下幾點(diǎn): 1、資源受限: 虛擬主機(jī)由于共享服務(wù)器資源,主機(jī)商會對每個(gè)用戶進(jìn)行資源限制,包括流量、軟件等。這意味著在某些功能上,用戶不能隨意安裝軟件,可能會限制網(wǎng)站的靈活性和擴(kuò)展性。 2、功能支持受限: 網(wǎng)站設(shè)計(jì)時(shí)所需要的功能支持需要以虛擬主機(jī)為參考,例如數(shù)據(jù)庫類型、操作系統(tǒng)等。這可能會限制網(wǎng)站開發(fā)時(shí)的技術(shù)選擇和創(chuàng)新。 3、網(wǎng)站牽連問題: 如果同一臺服務(wù)器上的其他網(wǎng)站受到懲罰或
    的頭像 發(fā)表于 11-18 14:09 ?382次閱讀

    如何優(yōu)化ipc監(jiān)控系統(tǒng)的存儲方案

    合適的存儲介質(zhì)是優(yōu)化IPC監(jiān)控系統(tǒng)存儲方案的第一步。當(dāng)前市場上主要有三種類型的存儲介質(zhì):硬盤驅(qū)動器(HDD)、固態(tài)驅(qū)動器(SSD)和混合存儲。每種介質(zhì)都有其優(yōu)缺點(diǎn): HDD :成本較低
    的頭像 發(fā)表于 11-15 14:24 ?551次閱讀

    D類功放輸出的LC電路的電感選型的時(shí)候需要注意哪些參數(shù)?

    D類功放輸出的LC電路的電感選型的時(shí)候需要注意哪些參數(shù),或者是什么樣的類型電感適合使用哪一些不適合使用
    發(fā)表于 10-12 08:37

    OPA1612作為ADC的差分輸入濾波器,電路無法正常工作的原因?

    芯片溫度很高,兩片1612電流在350mA左右, 我的供電是正負(fù)15V ,電源部分都是正常的, 我換成TL072電路可以正常。 但我覺得OPA1612性能會好一些,所以選擇這個(gè)芯片,為何不適合這個(gè)電路呢?
    發(fā)表于 09-29 07:57

    為什么面接觸型二極管不適合高頻電路

    面接觸型二極管(也稱為平面二極管)是一種半導(dǎo)體器件,其特點(diǎn)是在制造過程中,PN結(jié)是在半導(dǎo)體材料的表面形成的。這種類型的二極管在早期的電子設(shè)備中非常流行,但隨著技術(shù)的發(fā)展,它們在高頻電路中的應(yīng)用越來越少。 1. 基本原理和結(jié)構(gòu) 面接觸型二極管的工作原理基于PN結(jié)的單向?qū)щ娦?。在正向偏置時(shí),PN結(jié)導(dǎo)通,允許電流通過;在反向偏置時(shí),PN結(jié)截止,阻止電流通過。面接觸型二極管的結(jié)構(gòu)包括一個(gè)N型半導(dǎo)體基底和一個(gè)P型半導(dǎo)體層,它們在
    的頭像 發(fā)表于 09-24 10:00 ?693次閱讀

    探索存儲新未來:為何EVASH EV24C256A EEPROM成為市場新寵

    探索存儲新未來:為何EVASH EV24C256A EEPROM成為市場新寵
    的頭像 發(fā)表于 09-05 15:31 ?585次閱讀

    防水和防振動功能2.5 英寸SAS/SATA硬盤抽取盒 非常適合車載數(shù)據(jù)存儲

    首創(chuàng)的防水和防振動功能 2.5 英寸 SAS/SATA 硬盤抽取盒 – 非常適合車載數(shù)據(jù)存儲
    的頭像 發(fā)表于 08-12 19:16 ?594次閱讀
    防水和防振動功能2.5 英寸SAS/SATA硬盤抽取盒 非常<b class='flag-5'>適合</b>車載數(shù)據(jù)<b class='flag-5'>存儲</b>

    keras模型轉(zhuǎn)tensorflow session

    在這篇文章中,我們將討論如何將Keras模型轉(zhuǎn)換為TensorFlow session。 Keras和TensorFlow簡介 Keras是一個(gè)高級神經(jīng)網(wǎng)絡(luò)API,它提供了一種簡單、快速的方式來構(gòu)建
    的頭像 發(fā)表于 07-05 09:36 ?748次閱讀

    請問stm32是不是不適合控制有位置要求的交流伺服pmsm電機(jī)?

    stm32很適合控制無傳感器pmsm電機(jī),是否可以認(rèn)為:stm32不適合控制有編碼器的交流伺服電機(jī)
    發(fā)表于 05-16 07:31