1.Verlässliche System

1.1 Security和Safety的区别

1.2 Fault,Error和Failure的区别



举例如下:

1.3 Verfügbarkeit





例题:



1.4 Verlässlichkeit





MTTF的计算:



串联和并联的成功失败概率:



1.5 Fehlererkennung und -behandlung

Fehlererkennung:



Redundanz:



投票机制:



一般情况下投票计算:



二项分布再求和,R(t) ist p, nämlich Wahrscheinlichkeit von Erfolg. Wenn ich i=k=2,n=3 ersetzen, Ergebis ist 3p^2 (1-p)+p^3.

信息冗余错误模型:



奇偶校验:



缺陷如下:

2.Grundlagen der Kryptographie

2.1 Wesentliche Grundbegriffe der Kryptographie

概念:



2.2 Caesar-Chiffre加密的例子:



Entschlüsselung第一个解密结果是 AND ALL I ASK IS A TALL SHIP

第二个结果是 AND A STAR TO STEER HER BY

2.3 Mathematische Grundlagen

2.3.1 LOGIK, MENGEN UND FUNKTIONEN

Logische Operatoren:



Mengennotation:



{x:P(x)}表示所有满足P(x)的x的集合。



所谓幂集(Power Set/Potenz Menge), 就是原集合中所有的子集(包括全集和空集)构成的集族。

笛卡尔积:





Mengendifferenz意思是补集。

gebräuchliche Notation:







Funktionen:



向上向下取整:



逆象:



单向函数:



单向函数 (One-way function)是一种具有下述特点的单射函数:对于每一个输入,函数值都容易计算(多项式时间),但是给出一个随机输入的函数值,算出原始输入却比较困难。

单射injektiv、双射surjektiv、满射bijektiv:

2.3.2 TEILBARKEIT



Teilbarkeit的性质:



商和取余:



正数除法与负数除法:



表示法:



取余运算法则



补充:

\(a^b\) mod n = \((a\quad mod\quad n)^b\) mod n

负数取余运算规则不统一,只需要掌握正数取余。

上述两公式的证明:



最大公约数(ggT)



用欧几里得算法求最大公约数:



改进后的欧几里得算法:



最大公约数一些性质:



diophantischer Gleichungen:



扩展欧几里得算法:



Erweiterter Euklidischer Algorithmus (EEA)逆运算:



运算技巧:抛开复杂的公式不看,逆运算(Rueckwaertseinsetzen)要将余数r转化称a-qb的形式,不可以将qb转化成a-r形式,因为这是无意义的循环运算。并且要向数字大的方向转换,不可向数字小的方向转换,同理是循环无意义运算。

2.3.4 Primzahl





欧几里得原则:



整数的分解:



互质(无最大公约数):

2.3.5 MONOIDE UND GRUPPEN

幺半群:



例子:



Z0,Z1和Z2分别表示0,1,2个顺序元素

组:





欧几里得-费马:



因为有φ(n)个m,所以是m^(φ(n)),两边同乘左边的倒数,结果为1约去,得结果。



Zyklische Gruppen:



Ordnung:



Ordnung einer Gruppe: Anzahl der Elemente

Ordnung eines Elements: die kleinste natürliche Zahl n, sodass gn (also n-mal g multipliziert) das neutrale Element ist.

Beispiel 3.82三个都是Gruppe,所以反映的是元素个数,第一个是Z的数量,所以是无穷;第二个是(Zn+0) mod n,即n个数对n取余的数量是n;第三个是(Zn^x*1) mod n,这个数字不确定,所以是φ(n).

注:Zn^x定义见Definition 3.75

Diskreter Logarithmus:



Beispiel zum diskreten Logarithmus:

3.Symmetrische Systeme

3.1 Formale Definition eines symmetrischen Kryptosystem

3.2 Nützliche Funktionen

3.3 Verschiebechiffre

3.4 Vigenère-Chiffre

3.5 PERFEKTE UND SEMANTISCHE SICHERHEIT

3.5.1 One Time Pad Konstruktion

3.5.2 Bitketten XOR und (Bitketten) One Time Pad





Pr是概率的意思。

3.5.3 Perfekte Sicherheit

3.5.4 BLOCKCHIFFREN

3.5.5 Aktuell verwendete kryptographische Verfahren

3.5.6 Electronic Codebook (ECB) Modus





Definition:



Auffüllfunktion:



Das erste Beispiel ist eine Auffüllfunktion die so viele Nullen hinschreibt wie minimal nötig sind um auf die Blocklänge zu kommen. Die zweite Funktion schreibt erst eine Eins und dann wieder so viele Nullen wie noch minimal hingeschrieben werden müssen um auf die Blocklänge zu kommen. 将长度凑成n。

(Bitketten-)Blockchiffre:



Cipher Block Chaining (CBC) Modus:



3.6 Randomisierte Kryptosysteme

3.6.1 Cipher Block Chaining (CBC)

3.6.2 Counter (CTR) Modus



3.6.3 Randomisierter Zähler



3.7 STROMCHIFFREN

3.7.1 伪随机数

3.7.2 Stromchiffre



Hier ist x die Nachricht und z der Schlüssel.

(Z2)^k 和(Z2)^*的解释

Das sind die multiplikativ Inversen des Restklassenrings nach Definition 3.75 für n = 2.

4.Asymmetrische Systeme

4.1 Schlüssel und Schlüsselverteilung

4.2 Verschiedene Schlüssel

4.3 非对称加密数学定义

4.4 DAS RSA-KRYPTOSYSTEM

4.4.1 RSA密钥生成



4.4.2 Ver- und Entschlüsselung

4.4.3 Erweiterter Euklidischer Algorithmus (EEA)



Euklidischer Algorithmus: Beispiel:











Dabei ist φ die eulersche Phi-Funktion nach Def. 3.59. In unserem Beispiel ist das 240120.

φ(240120) = φ(460)φ(522)

= φ(23)
φ(20)×φ(261)φ(2)

= φ(23)
φ(4)φ(5)×φ(261)φ(2)

= 22(φ(2))^3φ(5)φ(26)

= 22
φ(8)φ(5)φ(26)

= 2244*168

= 59136

4.4.4 RSA: Beispiel(上接4.4.1密钥生成)



4.5 DAS ELGAMAL-KRYPTOSYSTEM



5^7 mod 23 = 17

4.6 HASHFUNKTIONEN UND MESSAGE AUTHENTICATION CODES

4.6.1 Kompressionsfunktion, Hashfunktion,Kollisionsresistenz

4.6.2 Merkle-Damgård-Hashfunktionen

4.6.3 HMAC-Konstruktion



5. Digitale Signaturen

5.1 Einleitung der digitale Signaturen





Digitale Signaturen können für verschiedene Zwecke benutzt werden

5.2 Signieren



5.3 Sicherheit









Die existentielle Fälschung einer Nachricht kann

als Spiel charakterisiert werden



Man kann zeigen, dass die RSA-Signatur unter bestimmten Annahmen sicher ist.

5.4 DSA (Digital Signature Algorithm)



Eine Alternative zur RSA-Signatur ist der Digital Signature Algorithm (DSA)



计算过程解释???

Beispiel zum Signieren durch DSA (1):



Beispiel zum Signieren durch DSA (2):



\(k^{-1}\) = \(36^{57}\) mod 59 = 41

Beispiel zum Signieren durch DSA (3):

6. Schluesselverteilung und Schluesselaustausch

6.1 Schlüsselverteilung

6.1.1 Arten von Schlüsseln

6.1.2 Die Verwaltung der öffentlichen Schlüssel

6.1.3 Wahl eines dezentralen Ansatz

6.1.4 Probleme bei beiden Verfahren

6.2 Schlüsselaustausch

6.2.1 GRUNDLAGEN UND NAIVE PROTOKOLLE







Wir betrachten nun einfache Protokolle mit einer vertrauenswürdigen Partei

6.2.2 DIE NEEDHAM-SCHROEDERPROTOKOLLE



Wir betrachten nun ein real genutztes Protokoll für Schlüsselaustausch und Authentifikation



Es gibt auch eine asymmetrische Variante dieses Protokolls

6.2.3 DAS DIFFIE-HELLMAN-PROTOKOLL

Die Grundidee des Diffie-Hellman-Protokolls veranschaulicht (1):



Die Grundidee des Diffie-Hellman-Protokolls veranschaulicht (2):



Das Diffie-Hellman-Protokoll auf Restklassengruppen:



Diffie-Hellman-Schlüsselaustausch: Beispiel:



Die Sicherheit dieses Verfahrens basiert dabei auf dem CDH-Problem:



Ohne zusätzlichen Schutz ist auch ein einfacher MitM-Angriff möglich:



Beim Station-to-Station-Protokoll wird dieser Angriff verhindert:

7. Kryptographie: Ausblick

7.1 INTEGRITÄTSSCHUTZ MIT VERSCHLÜSSELUNG

Oft möchte man Integritätsschutz und Vertraulichkeit kombinieren:



Man kann AE durch Kombination von Verschlüsselung und MACs erreichen:



Der Galois/Counter-Mode funktioniert mit Blockchiffren der Blocklänge 128 Bit:



Die GCTR-Funktion von GCM:



Die GHASH-Funktion von GCMCounter-Modus für Blockchiffren:



\(F_{2}^{128}\)怎么来的???

Beides kombiniert ergibt dann den Galois/Counter-Modus:



Verschlüsselung und MAC-Berechnung können dabei parallel erfolgen:

7.2 SECRET SHARING

Zugrunde liegende Idee ist bei Secret Sharing das Aufteilen des Schlüssels auf alle Teilnehmer:





Statt dessen möchte man auch mit einem Teil der Gruppe entschlüsseln können:



Ein solches Schwellwert-Kryptosystem kann man wie folgt konstruieren:



Wie benötigen einen vertrauenswürdigen Dealer und sichere Kommunikationskanäle:



Shamirs Secret Sharing Protokoll:



Um den Schlüssel zu erhalten, muss aus den Funktionswerten das Polynom berechnet werden



Lagrange-Interpolation:



Beispiel:



例子的ji'suan计算如何得出的???

求逆元的公式:x \(\equiv\) \(a^{b-2}\) (mod b)

Eigenschaften von Shamirs Secret Sharing Protokoll:

7.3 POST-QUANTEN-KRYPTOGRAPHIE

Grovers Algorithmus:



Shors Algorithmus:



Als Beispiel der PQ-Kryptographie betrachten wir die Hashbasierte Kryptographie (1):



Als Beispiel der PQ-Kryptographie betrachten wir die Hashbasierte Kryptographie (2):



Als Beispiel der PQ-Kryptographie betrachten wir die Hashbasierte Kryptographie (3):



Als Beispiel der PQ-Kryptographie betrachten wir die Hashbasierte Kryptographie (4):



为什么0010和0111可以使0110和0011签名???

Anschauliches Beispiel zu ZK-Beweisen:



Mathematisch kann man ZK-Beweise über Graphenisomorphismen konstruieren (1):



Mathematisch kann man ZK-Beweise über Graphenisomorphismen konstruieren (2):

8. zugriffskontrolle

8.1 EINLEITUNG

In der heutigen Vorlesung beschäftigen wir uns mit Zugriffskontrollmodellen:



Schutzziele der Zugriffskontrolle sind Integrität und Vertraulichkeit:



Modelle sind die formale Abstraktion von Sicherheitsrichtlinien und Kontrollprinzipien:



Ein geeignetes Modell wird dann zum Erreichen der Schutzziele implementiert:



Wir betrachten im folgenden drei verschiedene Modelle:

8.2 BENUTZERBESTIMMBARE ZUGRIFFSKONTROLLE (DAC)

Discretionary Access Control lässt sich mit einer Zugriffsmatrix beschreiben:



Diese Art der Zugriffskontrolle ist flexibel und einfach zu implementieren:



Statt in einer Matrix stellt man DAC oft mit Zugriffskontrolllisten (ACL) dar:



Auch die einfachen Dateizugriffsrechte in UNIX-Systemen sind als ACL interpretierbar:



Zugriffsrechte können dabei nur an Besitzer,Gruppe und andere vergeben werden:



Man kann DAC auch durch zeilenweise Speicherung der Zugriffsmatrix implementieren:

8.3 ROLLENBASIERTE ZUGRIFFSKONTROLLE (RBAC)

Mit rollenbasierter Zugriffskontrolle lassen sich leicht Organisationsstrukturen abbilden:



Formal lässt sich die rollenbasierte Zugriffskontrolle (RBAC) wie folgt definieren:



P是Potenz Menge,pr是Permission

Eine Sitzung mit aktiven Rollen lässt sich auch schematisch darstellen:



Als Beispiel betrachten wir die Rollen und Berechtigungen in einem Krankenhaus:



Eine Erweiterung von RBAC erlaubt die Vererbung von Rechten:



Partielle Ordnungen sind dabei formal eine spezielle Art von Relationen:



Für die Implementierung von RBAC müssen bestimmte Eigenschaften eingehalten werden:



Constraints: Mit RBAC lässt sich Rollentrennung auf zwei Arten umsetzen:



Abschließend fassen wir die Vorteile von RBAC noch einmal zusammen:

8.4 SYSTEMBESTIMMTE ZUGRIFFSKONTROLLE (MAC)

Systembestimmte Zugriffskontrolle (MAC) beschäftigt sich mit Informationsflüssen:



Das Bell-La Padula Modell regelt die Vertraulichkeit von Informationsflüssen:



Als Beispiel betrachten wir eine militärische Anwendung:



Bell-La Padula erweitert eine einfache Zugriffsmatrix um Sicherheitseigenschaften:



Simple-security (No-read-up):



*-Property (No-write-down): Verhindert leaks aus geheimen Daten:



Zusammenfassend betrachten wir die Vorund Nachteile des Bell-La Padula Modells:



Als duales Modell zu Bell-La Padula sichert das Biba Modell die Integrität von Daten:

9. Authentifizierung

9.1 EINLEITUNG

Wir beschäftigen uns in dieser Vorlesung mit Überprüfung und Bestätigung einer Identität:



Authentifizierung kann durch mehrere Ansätze in Computersystemen implementiert werden:



Heutzutage verwendet man dazu normalerweise Mehrfaktor-Verfahren:



Wir unterscheiden zwischen einseitiger und wechselseitiger Authentifizierung:

9.2 AUTHENTISIERUNG DURCH WISSEN

Gängigste Methode zur Authentisierung durch Wissen sind Passwörter:



Authentifikation mit Passwörtern: Plaintext:





Authentifikation mit Passwörtern: TLS:





Authentifikation mit Passwörtern: gehashte Passwörter:





Authentifikation mit Passwörtern: gehashter Passwörter mit Salt:



Authentifizierung durch Wissen funktioniert auch mit Challenge-Response-Verfahren:



Challenge-Response-Verfahren (CHAP):



Auch diese Verfahren müssen jedoch sorgfältig gegen Angriffe geschützt werden:



Beispiel: SMB-Relay mit NTLMv2:

9.3 AUTHENTISIERUNG DURCH BESITZ

Grundlage der Authentifizierung durch Besitz sind sogenannte „Token“:



Ein Beispiel für ein dynamisches HardwareToken ist die Athene-Karte der TU Darmstadt:



Die aktuelle Athene-Karte hat nur noch einen kontaktlosen Chip:



Mit einem Kryptoprozessor lassen sich leicht Challenge-Response-Verfahren realisieren:



Authentifikation durch Besitz: Probleme

9.4 AUTHENTISIERUNG DURCH MERKMALE

Bei biometrischen Verfahren findet die Authentifizierung über Merkmale statt:



Problematisch ist dabei die möglichst fehlerfreie Erkennung der Merkmale:



Man muss die Fehlerraten für den Anwendungsfall gegeneinander abwägen



Als Beispiel für ein biometrisches Merkmal betrachten wir Fingerabdrücke:



Bei allen biometrischen Verfahren muss man die Vertraulichkeit beachten



Ein Problem ist dabei auch die Sicherstellung der Authentizität der Merkmale:

9.5 SINGLE-SIGN-ON / KERBEROS

Als spezielle Anwendung betrachten wir nun Kerberos als Single-Sign-On Dienst:



Pro Domäne gibt es bei Kerberos ein vertrauenswürdiges Key Distribution Center:



Der Ticket Granting Server (TGS) verteilt sogenannte Tickets:



Diese Tickets dienen zur Authentisierung bei anderen Diensten:















Angriffe Kerberos: Offline Cracking:



Angriffe Kerberos: Overpass the Hash:



Angriffe Kerberos: Pass the Ticket:



Angriffe Kerberos: Golden Ticket:



Angriffe Kerberos: Silver Ticket:

10. Softwaresicherheit:

10.1 Malware

Trojaner:



Viren:



Viren Executable infectors:



Viren Encrypted viruses:



Viren Polymorpic viruses:



Würmer:



Ausbreitung von Würmern:Code Red (v2):



Ransomware:



Erkennungsmöglichkeiten:



EICAR-Testsignatur:

10.2 SCHWACHSTELLEN: BUFFER OVERFLOWS

Buffer Overflows:



Buffer Overflows: Demo (1):



Der Stack in C:



Stack Smashing:



Buffer Overflows: Demo (2):



Buffer Overflows: Zusammenfassung:

11. Websicherheit

11.1 EINLEITUNG

Heutzutage werden hauptsächlich nur noch Web Anwendungen benutzt:



Die Architektur von Web Anwendungen:



…birgt eine Fülle an Sicherheitsproblemen:



Verteilung von verschiedenen Angriffen:

11.2 BROWSER SECURITY

Browser vs. Web Application Security:



Sicherheit im Browser (hier nur HTTPS):



Sicherheit auf den ersten Blick Prüfmethoden für Website-Zertifikate:











Weitere Schutzmechanismen (nicht im Detail in dieser Vorlesung):

11.3 WEB APPLICATION SECURITY

Browser Security vs. Web Application Security:



Exkursion: HTML – Basic Was sollte man beachten?



PHP: Hypertext Preprocessor für dynamische Erzeugung von Inhalten:



OWASP Top 10:

11.4 SQL INJECTION

Was ist SQL?



SQL Injections:



SQL Injection Beispiele:













immer "false"可以让UNION ALL后面的语句执行

Gegenmaßnahmen, um sich vor SQL Injection zu schützen:



11.5 CROSS SITE SCRIPTING (XSS)

Kurze Einführung in JavaScript:



Cross-Site-Scripting (XSS) führt Scripte auf dem Rechner des Opfers aus:



Cross Site Scripting (XSS) (Non-)Persistent:



Persistent (stored) XSS:



Non-Persistent (reflected) XSS:



Einfaches Beispiel: Reflected XSS:



Es gibt viele verschiedene Wege um JavaScript auszuführen und zu nutzen:



Gegenmaßnahmen:



Warum blacklisten keine gute Idee ist…:



MySpace Worm Samy: What XSS can do ?

12. Netzwerkgrundlagen

12.1 EINLEITUNG

Physical Layer:



Application Layer:



Presentation Layer:



Session Layer:



Transport Layer:



Network Layer:



Verbindung von 3 Netzen:



Data link layer:



Wie funktioniert ein Switch?

Ziel: Alice möchte mit Bob kommunizieren:



Physical Layer:



Verschachtelung der einzelnen Schichten..:



Kennzeichnung:



MAC Adressen:



IP Subnetze:





Ports:



Ports (Beispiel):

12.2 SPOOFING

MAC Spoofing:



IP Auflösung:



IP Auflösung Beispiel:





ARP Spoofing (IP Spoofing):



Dynamic Host Configuration Protocol (DHCP):



DHCP Spoofing:



Domain Name System (DNS):





Spoofen von Metadaten:



12.3 DENIAL OF SERVICE ANGRIFFE

Ziel von DoS-Angriffen:



Allgemeine Technik von DoS-Angriffen:



Internet Control Message Protocol (ICMP):



Ping of Death (PoD):



Smurf Attack (Broadcast Attack):



Transmission Control Protocol (TCP):



SYN Flood:



攻击服务器使其不能再提供服务。

SYN-ACK Flood (SYN Reflection Attack):

12.4 FIREWALLS, INTRUSION DETECTION UND PREVENTION SYSTEME

Firewalls im Schichtenmodell:



Firewall Typen:



Zustandsloser Paketfilter:



Beispiel: Linux-basierte Netwerk-Firewalls per iptables:



Intrusion Detection und Prevention Systeme (IDS/IPS):

13. DNS

13.1 DNS BASICS

Das Domain Name System (DNS):







DNS Records – Allgemeines Format:



DNS Records – Record-Typen:



DNS Records – RRsets:



DNS Nachrichtenübermittlung:



DNS Nachrichtenformat:



RRset = Menge von DNS Records (>=1) mit selben Werten in Name, Type, Class und TTL

DNS Nachrichten in der Praxis:







Namensauflösung – Typischer Ablauf:



步骤12345678之后ABC

Namensauflösung – Caches: Gecachete Antwortdaten:



Namensauflösung – Caches: Gecachete Infrastrukturdaten:



Namensauflösung – Rekursive und Iterative Anfragen:





rd,qr,ra是什么??

13.2 SICHERHEIT DES DNS

DNS Cache Poisoning:



DNS Cache Poisoning im Auflösevorgang:





Historisches DNS Cache Poisoning:



Historisches DNS Cache Poisoning Bailiwick-Regel:



Off-Path DNS Cache Poisoning:





Off-Path DNS Cache Poisoning Kaminskys Angriff (2008):



Off-Path DNS Cache Poisoning Kaminskys Angriff (2009):



Man-in-the-Middle DNS Cache Poisoning:



Man-in-the-Middle DNS Cache Poisoning:Mögliche Angriffe:



Man-in-the-Middle DNS Cache Poisoning:Gegenmaßnahmen: DNSSEC:

信任链







Man-in-the-Middle DNS Cache Poisoning Gegenmaßnahmen: DoH/DoT:



Weitere Angriffe auf das DNS:

13.3 BEEINFLUSSUNG DER SICHERHEIT VON DRITTSYSTEMEN DURCH DAS DNS

DNS Amplification DDoS:





DNS Amplification DDoS – Abmilderungen:



DNS Tunneling:





SPF – Sender Policy Framework:







Weitere Sicherheitsmechanismen:



Zusammenfassung:

14. Border Gateway Protocol (BGP)

14.1 EINLEITUNG

Routing: Lokale Netzwerke:











14.2 BORDER GATEWAY PROTOCOL

BGP: Autonome Systeme:



BGP: Realer Netzwerkgraph:



BGP: Abstraktion in Autonome Systeme:



BGP: Announcements:



BGP Routing:



BGP: Sub-prefix Hijacking:



BGP Hijacking:



BGP Hijacking: Gegenmaßnahmen (1):



BGP Hijacking: Gegenmaßnahmen (2):

15. Sichere Verbindungen

15.1 EINLEITUNG

Sichere Verbindungen gibt es auf verschiedenen Ebenen:

15.2 TLS

TLS: Einleitung:



Cipher Suites:



TLS: Vereinfachte Übersicht:



TLS: Zertifizierung:



TLS-Zertifikat: Beispiel:



TLS: Prüfung der Identität:



TLS auf Anwendungsebene:



TLS Zusammenfassung:



TLS: Sichere Verbindung auf Applikationsebene:

15.3 Sichere Verbindungen IPSEC/VPN

Site-to-Site VPN (Virtual Private Network):



IPSec: Transport vs. Tunnelmodus:



Remote Access VPN:



TLS vs. VPN:



Meta-Daten in sicheren Verbindung:

15.4 Sichere Verbindungen ONION ROUTING/TOR

Onion-Routing via TOR:



The Onion Routing:



Anonymität durch TOR?

Computersystemsicherheit学习笔记的更多相关文章

  1. js学习笔记:webpack基础入门(一)

    之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...

  2. PHP-自定义模板-学习笔记

    1.  开始 这几天,看了李炎恢老师的<PHP第二季度视频>中的“章节7:创建TPL自定义模板”,做一个学习笔记,通过绘制架构图.UML类图和思维导图,来对加深理解. 2.  整体架构图 ...

  3. PHP-会员登录与注册例子解析-学习笔记

    1.开始 最近开始学习李炎恢老师的<PHP第二季度视频>中的“章节5:使用OOP注册会员”,做一个学习笔记,通过绘制基本页面流程和UML类图,来对加深理解. 2.基本页面流程 3.通过UM ...

  4. 2014年暑假c#学习笔记目录

    2014年暑假c#学习笔记 一.C#编程基础 1. c#编程基础之枚举 2. c#编程基础之函数可变参数 3. c#编程基础之字符串基础 4. c#编程基础之字符串函数 5.c#编程基础之ref.ou ...

  5. JAVA GUI编程学习笔记目录

    2014年暑假JAVA GUI编程学习笔记目录 1.JAVA之GUI编程概述 2.JAVA之GUI编程布局 3.JAVA之GUI编程Frame窗口 4.JAVA之GUI编程事件监听机制 5.JAVA之 ...

  6. seaJs学习笔记2 – seaJs组建库的使用

    原文地址:seaJs学习笔记2 – seaJs组建库的使用 我觉得学习新东西并不是会使用它就够了的,会使用仅仅代表你看懂了,理解了,二不代表你深入了,彻悟了它的精髓. 所以不断的学习将是源源不断. 最 ...

  7. CSS学习笔记

    CSS学习笔记 2016年12月15日整理 CSS基础 Chapter1 在console输入escape("宋体") ENTER 就会出现unicode编码 显示"%u ...

  8. HTML学习笔记

    HTML学习笔记 2016年12月15日整理 Chapter1 URL(scheme://host.domain:port/path/filename) scheme: 定义因特网服务的类型,常见的为 ...

  9. DirectX Graphics Infrastructure(DXGI):最佳范例 学习笔记

    今天要学习的这篇文章写的算是比较早的了,大概在DX11时代就写好了,当时龙书11版看得很潦草,并没有注意这篇文章,现在看12,觉得是跳不过去的一篇文章,地址如下: https://msdn.micro ...

  10. ucos实时操作系统学习笔记——任务间通信(消息)

    ucos另一种任务间通信的机制是消息(mbox),个人感觉是它是queue中只有一个信息的特殊情况,从代码中可以很清楚的看到,因为之前有关于queue的学习笔记,所以一并讲一下mbox.为什么有了qu ...

随机推荐

  1. 在Vue3中如何为路由Query参数标注类型

    前言 最近发布了一款支持IOC容器的Vue3框架:Zova.与以往的OOP或者Class方案不同,Zova在界面交互层面仍然采用Setup语法,仅仅在业务层面引入IOC容器.IOC容器犹如一把钥匙,为 ...

  2. 飞书Webhook触发操作指南,实现事件驱动型工作流自动化

    本文提供了利用数据触发Feishu Webhook的具体操作指南,包括Webhook的设置以及编写触发代码的方法,为读者提供了实践参考,希望能帮助解决你目前遇到的问题. 描述 用于使用数据触发 Fei ...

  3. 2024九省联考 数学 T19

    寒假有朋友打电话吐槽九省联考,看了眼数学卷子感觉非常刺激.刚开学没事干,试着做一下 \(19\). (\(17\) 分) 离散对数在密码学中有重要的应用.设 \(p\) 是素数,集合 \(X=\{1, ...

  4. C#二叉搜索树算法

    二叉搜索树算法实现原理 二叉搜索树(Binary Search Tree,简称BST)是一种节点有序排列的二叉树数据结构.它具有以下性质: 每个节点最多有两个子节点. 对于每个节点,其左子树的所有节点 ...

  5. Linux 常见编辑器

    命令行编辑器 Vim Linux 上最出名的编辑器当属 Vim 了.Vim 由 Vi 发展而来,Vim 的名字意指 Vi IMproved,表示 Vi 的升级版.Vim 对于新手来说使用比较复杂,不过 ...

  6. TimeWheel算法介绍及在应用上的探索

    作者:来自 vivo 互联网服务器团队- Li Fan 本文从追溯时间轮算法的出现,介绍了时间轮算法未出现前,基于队列的定时任务实现,以及基于队列的定时任务实现所存在的缺陷.接着我们介绍了时间轮算法的 ...

  7. RS485与ModbusRTU

    前言 大家好!我是付工. 每次听到别人说RS485通信协议,就很想去纠正他. 今天跟大家聊聊关于RS485的那些事. 接口标准 首先明确一点,RS485不是通信协议,而是一种接口标准,它还有2个兄弟: ...

  8. shell脚本字符串截取方法整理

    首先先声明一个变量str,下面演示以该变量为例: str='https://www.baidu.com/about.html' 1.#号截取,删除左边字符,保留右边字符 echo ${str#*//} ...

  9. Node.js开发博客项目笔记-http请求处理(1)

    处理get与post请求示例代码: const http = require('http'); const querystring = require('querystring'); const se ...

  10. JAVAEE——tomcat安装

    一.下载 1.网址:Tomcat官网 选择版本:点击左边Download下的which version,根据Supported Java Versions来选择合适的Tomcat版本 下载软件:点击左 ...