《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 業界動態 > 基于JavaCard的用戶憑證管理模型設計

基于JavaCard的用戶憑證管理模型設計

2008-06-24
作者:羅建宏

  摘 要: 針對利用網絡服務時產生許多憑證信息或重要信息需要妥善保管這一實際應用問題,利用JavaCard技術并結合JAAS認證和授權服務,提出了基于Java智能卡的移動解決方案,實現了用戶憑證信息管理的雙因素認證防護,并分析了該方案的安全機制,實現了用戶憑證信息安全" title="信息安全">信息安全。
  關鍵詞: 憑證管理 JavaCard技術 智能卡


  隨著因特網的普及,人們可以越來越多地使用網絡服務,網絡服務在給人們帶來便利的同時,也帶來了一些麻煩。用戶收發電子郵件需要憑證(用戶名/密碼或相關信息);登錄網上銀行需要相應的憑證;訪問特定的信息也需要輸入憑證,類似的例子舉不勝舉。不同的系統平臺對信息認證有不同的要求。而且用戶對各種各樣的憑證信息很容易遺忘或記錯。毫無疑問,憑證對保護個人信息是至關重要的。憑證信息的可靠保存應具備如下特征:
  (1)憑證保存必須保證安全性。這表現在能正確保存各種用戶名、密碼等信息;防止黑客竊取憑證信息;保證憑證數據的私有性;需要對信息加密并安全存儲。
  (2)用戶在需要時能方便地獲取憑證。這主要表現在憑證信息的可移動性;用戶可以在任何需要的地方(如辦公室、家里等)獲取相應的憑證訪問相應的服務;保存憑證的設備是可隨身攜帶的,甚至可放在錢包里(如智能卡)。
  (3)保存憑證的技術需具有可移植性。JAVA語言編寫的軟件具有較強的可移植性,適用于不同的操作系統平臺。
  基于上述三點,明確了用戶憑證管理的解決方案:使用JavaCard技術和JAVA平臺設計,一個用戶使用一張智能卡,用戶經身份認證" title="身份認證">身份認證后可對保存在智能卡中的憑證操作,該方案必須包含上述三點要求及安全性要求。
1 Java Card技術概述
  Java Card最初由Schlumberger 提出,目前已被JavaSoft制定為一項標準,作為一項極有潛力占踞主導地位的智能卡標準。Java Card技術使得Java語言編寫的程序能夠運行在智能卡上或其他內存受限的設備中。Java Card技術可被部署在許多產業部門,如手機、社會保障卡及金融服務等。Java Card技術包含三個部分:
  (1)Java Card虛擬機(JCVM)規范,定義了用于智能卡的Java程序語言的一個子集和虛擬機規范。
  (2)Java Card運行時環境(JCRE)規范,定義了Java Card運行時環境的行為:內存管理、應用管理、安全執行,以及其他運行時特性。
  (3)Java Card應用編程接口(API)規范,描述了專門為智能卡程序進行程序設計所用的Java Card包和類核心及擴展的集合。
  以上三個部分為智能卡提供了一個安全的平臺。Java Card平臺依據智能卡廠商的特定技術,將應用程序" title="應用程序">應用程序拆分成小應用程序,并且為這些小應用程序提供標準系統和API接口。
  Java Card規范使得Java技術能夠在智能卡和其他內存受限的設備上運行。Java Card技術具有獨特的優勢:
  (1)互操作性。用Java Card技術開發的小應用程序可以運行在任何基于Java Card技術的智能卡上,而獨立于卡的生產商和底層的硬件。
  (2)安全性。Java Card技術依賴于Java編程語言的內在安全性,從而提供了一個安全可靠的執行環境。
  (3)多應用并存。Java Card使得多個應用程序可以在單個智能卡上并存。一張卡發放后,新的應用程序可以安全地安裝。
  (4)和現有標準的兼容性。Java Card API和現有的智能卡國際標準兼容,如ISO7816標準。
  在Java Card技術中,即使卡被斷電以后,卡上存儲的幾乎全部信息都還保留著。持續內存技術使得在掉電時智能卡仍然能保存信息。由于虛擬機和卡上創建的對象用來表示持續化信息,JCVM看起來一直在運行。斷電時,VM只是暫時停止。當下次卡重新啟動時,VM重新啟動并且從持續化存儲器中恢復前面的對象堆。除了其持續化特性,Java Card虛擬機和Java虛擬機是基本一樣的[4]。
2 基于Java Card的用戶憑證管理模型設計
  根據Java智能卡的特點及用戶憑證管理的目的,可設計如下管理模型,如圖1所示。


  該模型采用C/S結構,每一臺客戶應用計算機作為Client,而java智能卡充當Server角色,兩者通過與計算機相連的卡接收設備(CAD)連接??ń邮赵O備又可稱作終端、讀卡器和IFD(接口設備),它們都具有相同的基本功能,即向智能卡提供電源和建立數據傳輸連接。當Client端某個服務需要輸入憑證(如用戶名/密碼)時,讀卡器激活插入的java智能卡,經驗證java智能卡用戶身份后返回卡中相應的憑證信息到Client端,這時候用憑證信息可以訪問相應的服務資源。該方案利用二道關卡保護系統的安全,即雙因素認證(two-factor authentication),通過安全裝置(用戶自己保管智能卡)和智能卡的個人辨識密碼(PIN)雙重保護,避免對服務資源非授權存取。
2.1 Java智能卡的身份認證
  本文中的模型完全基于Java技術,Java技術廣泛應用于多用戶環境中。合法使用java智能卡是以用戶為中心(user-centric)的訪問控制,因此必須基于用戶的身份授予其不同的許可。用戶必須經身份認證后才有權使用保存在java智能卡中的憑證信息,這是保證用戶信息安全的第一道關卡。本文通過Java認證和權限服務JAAS(Java technology Authentication and Authorization Service Software)來完成。JAAS已完全集成在J2SE1.4平臺中,它是Java平臺的擴展security API,是可插拔鑒定模塊(Pluggable Authentication Module,PAM)的java實現。JAAS分為認證(authentication)和授權(authorization)兩部分。
  認證就是對一個用戶身份鑒定權限的處理過程。JAAS認證機制是基于PAM的,所以它支持允許系統管理員插入適當的鑒別機制以滿足安全要求的體系結構,這種體系結構也允許應用程序獨立于底層鑒別技術。因此,當有新的鑒別服務出現或當前服務需要更新時,系統管理員無需調整或重新編譯現有的應用程序就能輕松進行部署??蛻魬?Clinet Application)總是通過登錄上下文(LoginContext)對象和JAAS交互,如圖2所示。


  典型的認證處理過程要經過下面的步驟:(1)生成一個LoginContext對象。這個LoginContext尋找登錄配置文件以決定使用那個LoginModule。(2)通過調用LoginContext的login方法執行認證,它會加載預定義的LoginModule去檢驗是否用戶可以被認證。(3)如果用戶被認證,則用規則(Principal)和標識和其所屬項(subject)進行關聯。(4)或者在登錄失敗的情況下拋出一個LoginException。(5)使用LoginContext的logout方法進行注銷登錄。
  在JAAS中,登錄是一個二階段(two-phase)的處理過程。第一階段是“登錄(login)”階段如上面步驟2所描述的。這個階段惟一的任務是認證。只要處理過程成功通過這個階段,認證處理過程就進入了“提交(commit)”階段如上步驟3,這一階段LoginModule的commit方法被調用去關聯所屬子項(subject)相關的規則(Principal)和標識。在JAAS中一個所屬子項表示一個認證實體,例如一個人或者一臺設備。
  鑒別是授權的基礎,特別是在知道subject的身份時,應用程序要指定subject可以執行的動作行為。Subject只是表示無名的容器,用來為subject容納相關信息,而Principal表示subject的鑒別身份。授予subject的許可集取決于與subject相關聯的Principal,而不是取決于subject本身,這就是說,根據subject包含的鑒別Principal來賦予subject的權限。授予的權限許可集可以通過外部訪問控制策略來配置,策略配置文件包含了可以進行安全敏感操作的入口,如訪問一個具體的Web頁面或者本地的文件。
2.2 模型架構及實現
  根據圖1,可設計C/S結構的用戶憑證管理模型架構,如圖3所示。客戶端" title="客戶端">客戶端的任何應用都必須經過JAAS對Java智能卡的認證與授權,只有被授權后,客戶端的應用程序才能訪問Java智能卡中的特定信息。這時通過Java Card的RMI(Remote Object Invocation)接口JCRMI(RMI for Java Card Platform,Java Card遠程方法調用" title="方法調用">方法調用)與Java智能卡上通信,從而得到Java智能卡中的相應信息。當然,這中間需要通過讀卡設備連接智能卡,信息傳輸通過Card Service API支持。當二臺計算機彼此進行通信時,它們交換根據一系列協議構造的數據包。同樣Java智能卡也使用自己的數據包——稱作APDU(應用協議數據單元)與外部世界對話。APDU包含一條指令或響應信息。在智能卡里采用的是主從模式,而智能卡扮演從動的角色。換句話說,智能卡總是在等待來自終端的命令APDU。隨后,它執行APDU規定的動作,并以一個應答APDU向終端作出回答。JCRMI包含了智能卡與終端之間互相交換命令APDU和應答APDU的方法exchangeAPDU()。


  在圖3右邊,是整個架構的Server端,描繪了JCRMI調用位于Java智能卡上的方法的機制。這些方法在Remote Interface(遠程接口)中聲明。Java智能卡中的應用類(實現用戶憑證操作的類)APP Remote Class繼承Java Card平臺中的CardRemoteObject類并實現(Implements)Remote Interface的方法。在實例中,purseImpl 類代表圖3中的APP Remote Class。Java Card API 中的Dispatcher和RMIService處理APDU(應用協議數據單元)對象及Java Card 平臺的RMI請求(request)。Java Card應用程序稱為applets,一個卡上可駐留多個applets。每個applets均被其AID(應用程序標識符)惟一標識,如ISO 7816第5部分的規定。在圖3中,當Java智能卡插入讀卡器,執行用戶憑證管理的Applet被選中后激活,這時候Client端的應用程序就可以通RMI訪問Java智能卡中的信息了。Java Card applet是用一般的Java編譯器編譯的。編譯器的輸出結果(class文件)被輸入Java Card轉換器,轉換并優化Java字節代碼使之更適合在Java Card虛擬機上運行。轉換器的輸出結果被下載到Java Card上。
  以上是整個模型架構的工作機制,這個模型的第一道安全關卡由JAAS來實現,下面分析利用JavaCard實現用戶憑證管理的其他安全機制。
  (1)JCRMI及事務的原子性
  Java Card遠程方法調用是Java遠程方法調用(RMI)的一個子集,它為運行在卡接受設備(CAD)或讀卡器平臺上的客戶端程序提供了一個調用位于卡上的遠程方法的機制。程序包javacard.framework.service中的類RMIService為JCRMI提供了卡上傳輸層,當基于JCRMI的applet是當前選定的applet時,這個傳輸層被設計成一個由applet請求的服務。被傳送到RMIService方法的APDU對象封裝了JCRMI消息。
  事務是持續性數據更新的一個邏輯子集。例如,從一個帳號傳送到另一個帳號是一個銀行事務。事務的原子性是很重要的:要么更新所有的數據域,要么一個也不更新。JCRE提供了針對原子操作的靈活支持,這使得如果事務沒有正常完成,則卡上的數據恢復到其原始的事務狀態。這種機制防止了一些突發事件,例如在事務過程中突然掉電,以及防止了一些可能造成數據錯亂的程序錯誤,它們可能造成事務的各個步驟沒有全部完成[4]。
  (2)Java Card的Applet隔離
  隔離意味著一個applet不能訪問在另一個上下文(context)中的applet的方法或字段,除非其他applet顯式地提供了訪問接口。Java Card防火墻提供了大多數常見的安全問題的防護:可能允許敏感數據泄漏給另一個applet的開發錯誤和設計失誤。為了從一個公共可訪問的位置獲得一個對象引用,applet在使用引用訪問對象之前,必須滿足某些訪問規則,防火墻還提供了針對不正確代碼的防護。如果卡加載了不正確代碼,防火墻也會防止這個代碼訪問對象。本例中,用戶身份被JAAS認證后再被授權可訪問Java智能卡中的憑證信息,這是由JavaCard中的applet來引用訪問相應的對象,applet只能跟當前的context關聯,其他applet不能訪問當前context中的applet,所以每一個applet中的數據是安全的。
  (3)Java Card中的信息加密
  Java Card中有一個安全API javacard.security和一個密碼學API java.cardx.crypto,它們分別提供了和J2SE相應模塊java.security和javax.crypto類似的功能,這些功能實現了Java Card的安全和密碼學框架,提供一系列不同的加密算法,簽名算法、密鑰產生等功能,這些功能方法在JavaCard2.2.1平臺中已更新并進一步加強。對Java智能卡中的數據經常需要轉移(如讀、寫、存),為保證在這個轉移過程中信息的安全性,信息可以被加密以保證完整性和正確性。運用javacard.security和javacardx.crypto程序包,首先創建DES密鑰,然后創建和初始化一個cipher對象,最后加密信息。在讀取卡中保存信息時,使用RMI調用解密方法對信息解密。
2.3 關鍵代碼實現
  (1)定義purse接口(remote interface),包含驗證PIN信息,保存憑證信息、刪除憑證信息等方法。
  public interface purse extends RemoteInterface
  {
  ……
  public void verfyPIN(byte[]PIN) throws RemoteException,UserException;
  public void createNewCredential(String serviceName,String login,String password)
  throws RemoteException,UserException;
  public void deleteCredential(String serviceName) throws RemoteException,UserException;
  ……
  }
  (2)定義類purseImpl(見圖3中的My Remote Class),繼承CardRemoteObject,并實現purse接口(remote interface)。
  public class purseImpl extends CardRemoteObject implements
  purse
  {……
  public void verifyPIN(byte[]PIN) throws RemoteException, UserException {
  //check the PIN here
  }
  }
  (3)定義類myApplet(見圖3中的Applet),它是javacard.framework.Applet的子類。實例化purseImpl,并通過Dispatcher和RMIService處理Client和java智能卡間的信息交換。
  public class myApplet extends javacard.framework.Applet
  {
  private Dispatcher disp;
  private RemoteService serv;
  private Remote purse;
  public myApplet() {
  purse=new purseImpl();
  disp=new Dispatcher( (short) 1);
  serv=new RMIService(purse);
  disp.addService(serv,Dispatcher.PROCESS_COMMAND);
  register();
  }
  public void process(APDU apdu) throws ISOException
  { disp.process(apdu);}
  }
  智能卡是越來越受歡迎的易攜帶設備,使用此方案,用戶使用一張隨身帶的智能卡,可實現對多種密碼、憑證信息的管理(讀、寫、備份)。本文中的模型架構充分利用了Java Card平臺的優勢,并結合JASS認證與授權的功能安全處理卡中的信息,實現了用戶憑證信息管理(credential management)的雙因素認證防護,同時分析實現了Java智能卡中的信息安全。另外,該模型是開放的體系結構,可方便地與其他應用集成,具有擴展性。Java Card技術是基于Java語言的,所以,它還具有Java程序應用的優點。總之,本文描述的用戶憑證管理模型設計,是針對普遍的用戶需求而設計,具有較強的實用價值。隨著Java Card技術的日益成熟,java智能卡將越來越普及,用戶只要擁有一張智能卡,生活將變得更輕松。
參考文獻
1 Java Card Technology(2.2.1).http://java.sun.com/products/javacard/
2 Java Card RMI.http://java.sun.com/products/javacard/RMI_Client_API.pdf
3 JAAS.http://java.sun.com/products/jaas
4 Gong L著,朱岱譯.深入Java 2平臺安全——體系架構、API設計和實現(第二版).北京:電子工業出版社,2004

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          欧美日本三区| 国产精品拍天天在线| 国产一级一区二区| 国产精品成人一区| 国产精品久久97| 国产精品女同互慰在线看| 国产精品乱码久久久久久| 亚洲在线观看免费视频| 美腿丝袜亚洲色图| 最新国产の精品合集bt伙计| 欧美一站二站| 夜夜嗨av一区二区三区中文字幕| 性欧美18~19sex高清播放| 国产精品美女视频网站| 国产精品自在欧美一区| 亚洲午夜av电影| 日韩视频精品在线观看| 欧美国产一区视频在线观看| 久久久999国产| 亚洲中字黄色| 久久久不卡网国产精品一区| 国产精品三上| 1024日韩| 91久久午夜| 亚洲综合电影| 久久这里有精品视频| 国产精品video| 欧美在线视频在线播放完整版免费观看| 亚洲电影观看| 日韩一级大片在线| 亚洲女同精品视频| 欧美日韩激情网| 香蕉成人啪国产精品视频综合网| 国产欧美va欧美不卡在线| 久久成人免费网| 国产精品视频99| 国产精品黄页免费高清在线观看| 亚洲第一偷拍| 亚洲午夜精品久久久久久app| 一区二区三区三区在线| 欧美人成在线| 一本一道久久综合狠狠老精东影业| 午夜免费日韩视频| 国产精品久久久久久久app| 国产精品v片在线观看不卡| 国产亚洲一区精品| 国产精品美女久久久久av超清| 久久影院午夜片一区| 精品69视频一区二区三区| 久久久水蜜桃av免费网站| 尤物精品国产第一福利三区| 亚洲精品亚洲人成人网| 免费在线看一区| 国产精品久久久久久久久久三级| 欧美国产日韩一区二区三区| 欧美在线综合| 久久亚洲图片| 亚洲开发第一视频在线播放| 亚洲综合精品四区| 久久久久久日产精品| 这里只有视频精品| 99re在线精品| 欧美国产91| 亚洲日本欧美日韩高观看| 欧美精品18+| 美女精品国产| 亚洲日本中文| 欧美性感一类影片在线播放| 99精品热视频| 欧美一区二区大片| 一区二区欧美视频| 99精品99| 一区在线电影| 亚洲天堂av综合网| 国产精品久久久一本精品| 亚洲茄子视频| 狠狠色伊人亚洲综合网站色| 欧美一区激情视频在线观看| 国产日韩欧美| 亚洲国产精品视频一区| 1024亚洲| 久久夜色精品亚洲噜噜国产mv| 国产精品爱久久久久久久| 欧美视频在线免费| 激情婷婷久久| 欧美成人在线影院| 国产欧美亚洲日本| 免费在线看一区| 亚洲欧美在线另类| 夜夜躁日日躁狠狠久久88av| 亚洲天堂av综合网| 美日韩丰满少妇在线观看| 午夜精品婷婷| 影音先锋中文字幕一区| 国产精品第一页第二页第三页| 亚洲欧美激情四射在线日| 欧美国产三级| 午夜亚洲性色福利视频| 国产精品区一区二区三区| 欧美日韩亚洲一区二区| 欧美韩日一区二区| 欧美视频一区二区三区在线观看| 久久伊人精品天天| 亚洲欧美日本另类| 亚洲婷婷国产精品电影人久久| 好吊视频一区二区三区四区| 一区三区视频| 欧美一区二区三区视频在线观看| 久久久久久亚洲综合影院红桃| 亚洲综合电影| 黑人一区二区三区四区五区| 国产欧美一区二区色老头| 亚洲欧美日韩一区| 99精品久久免费看蜜臀剧情介绍| 亚洲视频综合| 亚洲最新在线| 欧美激情精品久久久久久黑人| 久久婷婷蜜乳一本欲蜜臀| 久久久亚洲高清| 美女主播一区| 国产一级精品aaaaa看| 久久精品卡一| 久久丁香综合五月国产三级网站| 亚洲精品影视在线观看| 久久欧美中文字幕| 国产精品视频一区二区三区| 久久婷婷亚洲| 亚洲国产精品久久久久婷婷884| 亚洲网站在线观看| 久久精品99国产精品| 久久久水蜜桃| 欧美一级艳片视频免费观看| 一区在线观看视频| 一本色道久久综合狠狠躁篇的优点| 亚洲视频免费看| 久久精品国产一区二区三区免费看| 国产一区二区按摩在线观看| 玖玖精品视频| 亚洲清纯自拍| 亚洲国产一区二区在线| 亚洲欧美资源在线| 精品成人在线视频| 久久婷婷色综合| 国产日韩一级二级三级| 午夜精品网站| 国产精品成人av性教育| 久久成人av少妇免费| 久久精品国产精品亚洲综合| 黄色在线一区| 欧美中文字幕不卡| 午夜久久福利| 欧美黄色小视频| 红桃视频亚洲| 亚洲欧美精品中文字幕在线| 麻豆成人在线观看| 一区二区免费在线播放| 国产裸体写真av一区二区| 老司机精品久久| 亚洲欧美一区二区激情| 欧美视频二区36p| 欧美另类99xxxxx| 亚洲人成在线观看一区二区| 国产精品一区二区三区观看| 亚洲一区二区精品在线| 久久高清一区| 亚洲精品极品| 亚洲国产免费看| 国产欧美日韩亚州综合| 国产精品欧美日韩久久| 久久riav二区三区| 久久久久一区二区三区四区| 91久久中文字幕| 亚洲一区视频在线| 国产精品福利片| 影音先锋日韩有码| 欧美日韩中文字幕日韩欧美| 一区二区三区在线免费观看| 在线一区二区三区四区| 国产色视频一区| 午夜亚洲伦理| 国产精品久久久久一区二区| 欧美成人乱码一区二区三区| 先锋a资源在线看亚洲| 亚洲国产高清aⅴ视频| 亚洲欧美中文在线视频| 国产精品wwwwww| 久久综合九色综合欧美就去吻| 国产情侣一区| 欧美日韩高清在线一区| 久久综合国产精品台湾中文娱乐网| 国产欧美一区二区精品仙草咪| 亚洲人成在线影院| 欧美日韩一区二区三区免费| 欧美激情影音先锋| 99在线精品视频| 亚洲手机成人高清视频| 欧美综合激情网| 久久久久久久高潮| 亚洲综合色激情五月| 性欧美大战久久久久久久久| 亚洲视频一区| 久久综合九色综合欧美狠狠| 欧美高清视频一区二区| 欧美国产乱视频| 亚洲手机在线| 一区二区三区日韩精品| 国产色视频一区| 国产精品劲爆视频| 宅男精品视频| 欧美日韩亚洲综合一区| 狠狠色丁香久久婷婷综合_中| 久久在线播放| 在线亚洲欧美专区二区| 欧美成年人视频| 亚洲一区区二区| 亚洲三级色网| 国产精品毛片va一区二区三区| 亚洲视频播放| 亚洲三级性片| 欧美私人网站| 国产欧美一区二区视频| 午夜精品视频在线观看一区二区| 在线精品一区二区| 欧美激情精品久久久久久免费印度| 欧美成人免费小视频| 欧美日韩国产丝袜另类| 亚洲欧美自拍偷拍| 国产欧美日韩精品在线| 国产精品视频网| 另类国产ts人妖高潮视频| 亚洲天堂成人在线观看| 久久久蜜臀国产一区二区| 91久久精品国产91性色tv| 国产精品日日做人人爱| 久久国产99| 亚洲毛片在线免费观看| 亚洲激情欧美| 国产精品vvv| 欧美一区国产在线| 国产伦精品一区二区三| 欧美精品18+| 亚洲视频一二区| 欧美精品麻豆| 国产日韩欧美综合在线| 国产精品二区二区三区| 激情亚洲一区二区三区四区| 亚洲精品国产精品国自产在线| 久久久久免费观看| 国产精品尤物福利片在线观看| 欧美精品成人| 亚洲国产精品悠悠久久琪琪| 欧美日韩视频一区二区| 欧美在线播放视频| 中文在线不卡| 久久人人97超碰精品888| 国产亚洲精久久久久久| 激情国产一区二区| 亚洲欧洲精品一区二区精品久久久| 国产精品一二三四| 亚洲免费成人av电影| 99精品视频一区| 国产亚洲欧美一区二区三区| 欧美xart系列在线观看| 国产乱码精品一区二区三区忘忧草| 欧美va天堂在线| 欧美日韩在线视频一区| 亚洲国产日韩欧美| 欧美日韩日日夜夜| 亚洲网站在线播放| 欧美日韩国产区一| 国产日韩在线看| 亚洲国产专区校园欧美| 国内精品视频666| 久久国产一区| 亚洲欧美久久| 国产精品久久中文| 亚洲国产视频直播| 中文网丁香综合网| 欧美精品在线一区二区三区| 欧美一区二区三区日韩| 国产一区二区三区日韩| 久久只精品国产| 久久久高清一区二区三区| 韩日成人在线| 亚洲已满18点击进入久久| 亚洲国产精品电影| 国产精品一区二区三区免费观看| 久久精品视频在线| 国产乱码精品1区2区3区| 在线精品视频一区二区三四| 一本大道久久精品懂色aⅴ| 亚洲国产91精品在线观看| 国产综合一区二区| 欧美高清在线视频观看不卡| 一区二区三区免费观看| 亚洲直播在线一区| 午夜亚洲一区| 99精品欧美一区二区三区| 国产精品黄色在线观看| 欧美激情精品久久久久久变态| 国产亚洲电影| 日韩系列欧美系列| 午夜亚洲视频| 亚洲精品乱码视频| 99精品久久免费看蜜臀剧情介绍| 欧美日韩国产一级片| 一区二区黄色| 欧美在线首页| 99re66热这里只有精品3直播| 国产一区二区成人久久免费影院| 亚洲免费福利视频| 国产精品久久久久av| 国产精品高潮呻吟久久| 怡红院av一区二区三区| 欧美sm重口味系列视频在线观看| 国产精品夫妻自拍| 欧美激情第五页| 亚洲高清不卡在线观看| 99国产精品久久| 国产精品天天摸av网| 国产精品免费观看在线| 亚洲欧美国产一区二区三区| 欧美日本成人| 亚洲久久一区二区| 好吊一区二区三区| 欧美电影资源| 久久艳片www.17c.com| 免费不卡在线观看|