Presentation is loading. Please wait.

Presentation is loading. Please wait.

امنیت شبکه.

Similar presentations


Presentation on theme: "امنیت شبکه."— Presentation transcript:

1 امنیت شبکه

2 چرا امنیت شبکه لازم است؟
مردمان بدخواه در شبکه حضور دارند. استفاده‌های تجاری اینترنت نیز مزید بر علت است.

3 چه معیارهایی برای امنیت وجود دارند؟
اطمینان: آیا نفر سومی ارتباط را می بیند؟ احراز هویت: آیا کسی که با من صحبت می‌کند همان است که ادعا می‌کند؟ عدم انکار: آیا می توانید کاری را که انجام داده‌اید انکار کنید؟ جامعیت: آیا داده در حین انتقال دستکاری شده است؟ تعیین سطح دسترسی: آیا شما مجاز به انجام این کار هستید؟

4 ابزارهای امنیتی رمزگذاری و رمزگشایی
پیغام را طوری کد کنیم که فقط دو طرف ارتباط بتوانند پیغام را تفسیر کنند. هم برای امنیت و هم برای احراز هویت استفاده می شود.

5 رمزنگاری پیغام را طوری کد کنید که فقط دو طرف ارتباط بتوانند پیغام را تفسیر کنند. Encryption Plaintext (P) Ciphertext (C) Key (K) Notation: Encryption: C=EK (P) Decryption: P = DK(C)

6 قوانین رمزنگاری لازم است که: الگوریتم: کلیدها:
عمومی باشد و همه آنرا بدانند. موجب می‌شود که نسبت به عملکرد الگوریتم اطمینان حاصل شود. کلیدها: به اندازه ی کافی طولانی باشند تا الگوریتم به آسانی شکسته نشود. آنقدر کوتاه باشد که الگوریتم موثر و سریع کار کند. اندازه‌های متداول: 56-bit, 128-bit, 256-bit, 512-bit

7 انواع الگوریتمهای رمزگذاری
جانشینی هر حرف را با یک حرف دیگر تعویض می کنیم. مثال: رمز سزار: a/D, b/E, c/F, d/G, …, z/C رمز Monoalphabetic a/Q, b/W, c/E, … براحتی می‌توان از روی خصوصیتی آماری زبان رمز را شکست.

8 انواع رمزگذاری ... رمز ترانهش Key = ANDREW
به جای تعویض حروف متن، ترتیب آنها را جابجا می کنیم. A N D R E W t h i s i s a m e s s a g e i w o u l d l i k e t o e n c r y p t n o w Key = ANDREW Plaintext = thisisamessageiwould liketoencryptnow Ciphertext = tagltyieiletisokco hmedopsswinnsauerw

9 رمزگشایی رمز ترانهش پیغام زیر توسط روش ترانهش و کلید SKYBLUE رمز شده است. SRMTISHEAGIIETHNASGSIOLE پیغام رمز نشده را به دست آورید.

10 انواع رمزنگاری... تمام الگوریتمهای رمزگذاری از ترکیب پیچیده‌ای از جانشانی و ترانهش استفاده می کنند. مثال: Data Encryption Standard (DES) از چندین تکرار پشت سر هم از جانشانی و ترانهش استفاده می کند و هر طبقه یک کلید ۵۶ بیتی دارد. توسط IBM طراحی شد و از NSA نیز استفاده شد. DES chaining چندین طبقه ی DES پشت سر هم چیده می‌شوند و خروجی هر طبقه ورودی طبقه ی بعدی است. International Data Encryption Algorithm (IDEA) از یک کلید ۱۲۸ بیتی استفاده می کند.

11 رمزگذاری متقارن: مشکل روشهای قبلی این است که کلید مشترک را چگونه به صورت امن مبادله کنیم؟

12 رمزگذاری کلید عمومی رمزگذاری کلید عمومی رمزگذاری کلید متقارن
فرستنده و گیرنده از یک کلید سری مشترک استفاده نمی کنند. کلید عمومی را همه میدانند. کلید خصوصی را فقط گیرنده ی پیغام می داند. رمزگذاری کلید متقارن فرستنده و گیرنده از یک کلید سری مشترک استفاده می کنند.

13 رمزگذاری کلید عمومی + Bob’s public key K B - Bob’s private key K B plaintext message, m encryption algorithm ciphertext decryption algorithm plaintext message K (m) B + m = K (K (m)) B + - پیغام ارسالی به باب توسط کلید عمومی باب رمز شده است. باب می تواند با استفاده از کلید خصوصی خود پیغام را رمزگشایی کند.

14 الگوریتمهای رمزگذاری کلید عمومی
ملزومات: - + 1 به K ( ) و K ( ) نیاز دارد به طوری که: B B K (K (m)) = m B - + + 2 اگر کلید K را داشته باشیم، تولید کلید خصوصی یعنی K امکان پذیر نباشد. - B B RSA: Rivest, Shamir, Adelson algorithm

15 RSA: انتخاب کلیدها 1. Choose two large prime numbers p, q.
(e.g., 1024 bits each) 2. Compute n = pq, z = (p-1)(q-1) 3. Choose e (with e<n) that has no common factors with z. (e, z are “relatively prime”). 4. Choose d such that ed-1 is exactly divisible by z. (in other words: ed mod z = 1 ). 5. Public key is (n,e). Private key is (n,d). K B + K B -

16 RSA: رمزگشایی، رمزگذاری
0. Given (n,e) and (n,d) as computed above 1. To encrypt bit pattern, m, compute c = m mod n e (i.e., remainder when m is divided by n) 2. To decrypt received bit pattern, c, compute m = c mod n d d (i.e., remainder when c is divided by n) Magic happens! m = (m mod n) e mod n d c

17 Bob chooses p=5, q=7. Then n=35, z=24.
مثال RSA: Bob chooses p=5, q=7. Then n=35, z=24. e=5 (so e, z relatively prime). d=29 (so ed-1 exactly divisible by z. e c = m mod n e letter m m encrypt: l 12 17 c d m = c mod n d c letter decrypt: 17 12 l

18 RSA: چرا درست کار می‌کند؟
m = (m mod n) e mod n d Useful number theory result: If p,q prime and n = pq, then: x mod n = x mod n y y mod (p-1)(q-1) (m mod n) e mod n = m mod n d ed = m mod n ed mod (p-1)(q-1) (using number theory result above) = m mod n 1 (since we chose ed to be divisible by (p-1)(q-1) with remainder 1 ) = m

19 RSA: یک خاصیت مهم دیگر The following property will be very useful later: K (K (m)) = m B - + K (K (m)) = use public key first, followed by private key use private key first, followed by public key Result is the same!

20 Cryptography question
Suppose N people want to communicate with each of N-1 other people. All communication between any two people, i and j is visible to all other people in the group and security is guaranteed by the encryption scheme. With symmetric key encryption, how many keys are required in the system as a whole? Express you answer in terms of N. How many keys are required (total) using public/private key cryptography. Express your answer in terms of N.

21 چه معیارهایی برای امنیت وجود دارند؟
اطمینان: آیا نفر سومی ارتباط را می بیند؟ احراز هویت: آیا کسی که با من صحبت می‌کند همان است که ادعا می‌کند؟ عدم انکار: آیا می توانید کاری را که انجام داده‌اید انکار کنید؟ جامعیت: آیا داده در حین انتقال دستکاری شده است؟ تعیین سطح دسترسی: آیا شما مجاز به انجام این کار هستید؟

22 Protocol ap1.0: Alice says “I am Alice”
احراز هویت هدف: باب می خواهد که آلیس هویت خود را اثبات کند. Protocol ap1.0: Alice says “I am Alice” “I am Alice” Failure scenario??

23 Protocol ap1.0: Alice says “I am Alice”
احراز هویت هدف: باب می خواهد که آلیس هویت خود را اثبات کند. Protocol ap1.0: Alice says “I am Alice” چون باب نمی تواند آلیس را ببیند، ترودی می‌تواند خودش را به عنوان آلیس جا بزند. “I am Alice”

24 احراز هویت: راهکار بعدی
پروتکلap2.0: آلیس هویت خود را طی بسته‌ای می فرستد که شامل آدرس IP آن نیز هست. “I am Alice” Alice’s IP address Failure scenario??

25 احراز هویت: راهکار بعدی
پروتکلap2.0: آلیس هویت خود را طی بسته‌ای می فرستد که شامل آدرس IP آن نیز هست. Trudy can create a packet “spoofing” Alice’s address “I am Alice” Alice’s IP address

26 احراز هویت: راهکار بعدی
پروتکلap3.0: آلیس هویت خود را طی بسته‌ای می فرستد که شامل یک کلمه ی عبور نیز هست. “I’m Alice” Alice’s IP addr password Failure scenario?? OK Alice’s IP addr

27 احراز هویت: راهکار بعدی
پروتکلap3.0: آلیس هویت خود را طی بسته‌ای می فرستد که شامل یک کلمه ی عبور نیز هست. Alice’s IP addr Alice’s password “I’m Alice” حمله‌ی پخش مجدد: ترودی بسته‌ی آلیس را ضبط و بعدا آنرا برای باب پخش می کند. OK Alice’s IP addr “I’m Alice” Alice’s IP addr password

28 احراز هویت: یک راهکار دیگر
پروتکلap3.1: آلیس هویت خود را طی بسته‌ای می فرستد که شامل یک کلمه ی عبور رمز شده نیز هست. “I’m Alice” Alice’s IP addr encrypted password Failure scenario?? OK Alice’s IP addr

29 حمله ی پخش مجدد هنوز کار می کند.
احراز هویت: یک روش دیگر پروتکلap3.1: آلیس هویت خود را طی بسته‌ای می فرستد که شامل یک کلمه ی عبور رمز شده نیز هست. Alice’s IP addr encrypted password “I’m Alice” حمله ی پخش مجدد هنوز کار می کند. OK Alice’s IP addr “I’m Alice” Alice’s IP addr encrypted password

30 احراز هویت: استفاده از عدد یکبار مصرف
هدف: جلوگیری از حمله ی پخش مجدد کلید یکبار مصرف: یک عدد مثل R که فقط یکبار استفاده می‌شود. ap4.0: باب برای آلیس یک نانس می فرستد. آلیس R را با استفاده از کلید سری رمز کرده و بر می‌گرداند. “I am Alice” R K (R) A-B آلیس زنده است و فقط آلیس کلید سری را می داند. ایراد؟

31 احراز هویت: استفاده از کلید عمومی
در ap4.0 لازم است که از یک کلید مشترک متقارن استفاده کنیم. آیا می توانیم از تکنیک کلید عمومی استفاده کنیم؟ ap5.0: از نانس و رمزگذاری عمومی استفاده کنید. “I am Alice” Bob computes R (K (R)) = R A - K + K (R) A - and knows only Alice could have the private key, that encrypted R such that “send me your public key” K A + (K (R)) = R A - K +

32 sends m to Alice encrypted with Alice’s public key
ap5.0: سوراخ امنیتی حمله مرد میانجی: ترودی برای آلیس مثل باب و برای باب مثل آلیس خود را وانمود می کند. I am Alice I am Alice R T K (R) - R A K (R) - Send me your public key T K + Send me your public key A K + T K (m) + Trudy gets T m = K (K (m)) + - A K (m) + sends m to Alice encrypted with Alice’s public key A m = K (K (m)) + -

33 ap5.0: سوراخ امنیتی حمله مرد میانجی: ترودی برای آلیس مثل باب و برای باب مثل آلیس خود را وانمود می کند. تشخیص این حمله مشکل است: باب تمام آنچه آلیس می فرستد را دریافت می کند و برعکس. (لذا اگر هفته ی بعد آلیس و باب همدیگر را ببینند مشکلی وجود نخواهد داشت) مشکل این است که ترودی همه چیز را دریافت کرده است. راه حل: استفاده از توزیع کلید

34 توزیع: مرکز توزیع کلید (برای کلید متقارن)
Key Distribution Center

35 توزیع: تاییدیه کلید عمومی (برای کلید نامتقارن)
Certification Authority K CA - CA’s private key Alice’s CA-signed certificate containing her public key Encryption algorithm K A + ( , Alice) این شکل نحوه ی تولید گواهی امضای آلیس را نشان می دهد. آلیس برای احراز هویت خود این گواهی را به باب ارائه می دهد. گواهی امضای آلیس شامل کلید عمومی آلیس است و فقط با کلید عمومی CA باز می شود. هر کس بخواهد خود را به جای آلیس جا بزند، باید گواهی آلیس را داشته باشد. لذا، باب حتما از کلید عمومی آلیس استفاده خواهد کرد و چون مزاحم کلید خصوصی آلیس را ندارد، نمی تواند مشکلی ایجاد کند.

36 چه معیارهایی برای امنیت وجود دارند؟
اطمینان: آیا نفر سومی ارتباط را می بیند؟ احراز هویت: آیا کسی که با من صحبت می‌کند همان است که ادعا می‌کند؟ عدم انکار: آیا می توانید کاری را که انجام داده‌اید انکار کنید؟ جامعیت: آیا داده در حین انتقال دستکاری شده است؟ تعیین سطح دسترسی: آیا شما مجاز به انجام این کار هستید؟

37 امضای دیجیتالی تکنیک رمزگذاری شبیه امضای دستی است.
فرستنده (باب) سند را به طور دیجیتالی امضا می کند و خود را به عنوان صاحب و ایجاد کننده ی سند معرفی می کند. قابل تایید و غیر قابل کپی: گیرنده (آلیس) می تواند ثابت کند که باب سند را امضا کرده است.

38 Bob’s message, m, signed (encrypted) with his private key
امضای دیجیتالی امضای دیجیتالی ساده ی پیغام m: باب با استفاده از کلید خصوصی خود KB سند را امضا می کند. KB(m) - - - K B - Bob’s message, m Bob’s private key K B - (m) Dear Alice Oh, how I have missed you. …(blah blah blah) Bob Bob’s message, m, signed (encrypted) with his private key Public key encryption algorithm

39 امضای دیجیتالی (ادامه)...
اگر KB(KB(m) ) = m باشد، هر کس که سند را امضا کرده باشد کلید خصوصی باب را دارد. + - غیر قابل انکار: آلیس می تواند m و KB(m) را به دادگاه ببرد و ثابت کند که باب سند را امضا کرده است. -

40 خلاصه ی پیغام از لحاظ محاسباتی رمزگذاری یک پیغام طولانی با کلید خصوصی هزینه ی زیادی دارد. هدف: از سند یک اثر انگشت با طول ثابت و محاسبه ی آسان تهیه کنیم. تابع درهم ساز H را به m اعمال کنید و یک خلاصه ی ثابت از پیغام H(m) را تولید کنید.

41 خلاصه ی پیغام: خواص تابع درهم ساز: چند به ۱
large message m H: Hash Function H(m) خواص تابع درهم ساز: چند به ۱ تولید یک خلاصه ی با طول ثابت اگر خلاصه ی x را داشته باشیم، پیدا کردن m که در رابطه ی x = H(m) صدق کند سخت باشد.

42 امضای دیجیتالی: امضای خلاصه ی پیغام
ارسال یک پیغام به همراه امضای دیجیتالی توسط باب آلیس هم امضا را چک می‌کند و هم جامعیت داده را امتحان می کند. large message m H: Hash function KB(H(m)) - encrypted msg digest H(m) digital signature (encrypt) Bob’s private key large message m K B - Bob’s public key digital signature (decrypt) K B + KB(H(m)) - encrypted msg digest H: Hash function + H(m) H(m) equal ?

43 الگوریتمهای تابع درهم ساز:
تابع درهم ساز MD5 خیلی پرکاربرد است.(RFC 1321) یک خلاصه ی ۱۲۸ بیتی از پیغام طی چهار مرحله تولید می کند. اگر یک رشته ی ۱۲۸ بیتی x داشته باشیم، پیدا کردن پیغامی که منجر به x شده است راحت نیست. از SHA-1 نیز استفاده می شود. US standard [NIST, FIPS PUB 180-1] 160-bit message digest

44 چه معیارهایی برای امنیت وجود دارند؟
اطمینان: آیا نفر سومی ارتباط را می بیند؟ احراز هویت: آیا کسی که با من صحبت می‌کند همان است که ادعا می‌کند؟ عدم انکار: آیا می توانید کاری را که انجام داده‌اید انکار کنید؟ جامعیت: آیا داده در حین انتقال دستکاری شده است؟ تعیین سطح دسترسی: آیا شما مجاز به انجام این کار هستید؟

45 دیواره‌ی آتش firewall isolates organization’s internal net from larger Internet, allowing some packets to pass, blocking others. administered network public Internet firewall

46 دیواره‌ی آتش allow only authorized access to inside network (set of authenticated users/hosts) two types of firewalls: packet-filtering application-level

47 Should arriving packet be allowed in? Departing packet let out?
Packet Filtering Should arriving packet be allowed in? Departing packet let out? internal network connected to Internet via router firewall router filters packet-by-packet, decision to forward/drop packet based on: source IP address, destination IP address TCP/UDP source and destination port numbers ICMP message type TCP SYN and ACK bits

48 Packet Filtering Example 1: block incoming and outgoing datagrams with IP protocol field = 17 and with either source or dest port = 23. All incoming and outgoing UDP flows and telnet connections are blocked. Example 2: Block inbound TCP segments with ACK=0. Prevents external clients from making TCP connections with internal clients, but allows internal clients to connect to outside.

49 Application gateways Filters packets on application data.
gateway-to-remote host telnet session host-to-gateway telnet session Filters packets on application data. Example: allow select internal users to telnet outside. application gateway router and filter 1. Require all telnet users to telnet through gateway. 2. For authorized users, gateway sets up telnet connection to dest host. Gateway relays data between 2 connections 3. Router filter blocks all telnet connections not originating from gateway.

50 Limitations of firewalls and gateways
IP spoofing: router can’t know if data “really” comes from claimed source if multiple app’s. need special treatment, each has own app. gateway. client software must know how to contact gateway. e.g., must set IP address of proxy in Web browser filters often use all or nothing policy for UDP. tradeoff: degree of communication with outside world, level of security many highly protected sites still suffer from attacks.

51 A little more on Internet Security Threat Examples

52 Internet security threats
Packet sniffing: broadcast media promiscuous NIC reads all packets passing by can read all unencrypted data (e.g. passwords) e.g.: C sniffs B’s packets A C src:B dest:A payload B Countermeasures?

53 Internet security threats
IP Spoofing: can generate “raw” IP packets directly from application, putting any value into IP source address field receiver can’t tell if source is spoofed e.g.: C pretends to be B A C src:B dest:A payload B Countermeasures?

54 Internet security threats
Denial of service (DOS): flood of maliciously generated packets “swamp” receiver Distributed DOS (DDOS): multiple coordinated sources swamp receiver e.g., C and remote host SYN-attack A A C SYN SYN SYN SYN SYN B SYN Countermeasures? SYN

55 SSL and TLS Secure Sockets Layer (SSL) is a different approach - a new layer is added that provides a secure channel over a TCP only link. TLS is Transport Layer Security (IETF standard based on SSL).

56 SSL layer Application SSL TCP IP Application SSL TCP IP

57 Advantages of SSL/TLS Independent of application layer
Includes support for negotiated encryption techniques. easy to add new techniques. Possible to switch encryption algorithms in the middle of a session.

58 HTTPS Usage HTTPS is HTTP running over SSL.
used for most secure web transactions. HTTPS server usually runs on port 443. Include notion of verification of server via a certificate. Central trusted source of certificates.


Download ppt "امنیت شبکه."

Similar presentations


Ads by Google