Closed

RSA Signaturen & Watermarking

Bearbeitunsghinweise: im Falle von zu entwickelnden Programmen bzw. Skripten besteht eine vollständige Abgabe neben dem Sourcecode aus einer kurzen Dokumentation inkl. Herleitung, Angabe der verwendeten Literatur und einer Beispielausgabe bzw. einem Screenshot.

RSA Signaturen

Wir verwenden den 4096 bit RSA-Schlüssel

n = 288 364 817 458 507 563 494 061 046 506 889 212 254 412 919 357 167 696 834 152 303 744 394 233 352 835 681 697 381 666 486 387 735 245 379 737 221 772 771 030 750 003 788 777 318 944 020 314 951 917 579 348 419 812 632 020 579 813 018 600 948 145 342 359 105 827 224 537 867 562 809 084 125 418 544 621 074 982 033 270 882 172 212 504 460 767 442 908 264 038 865 858 267 416 659 529 093 490 427 106 793 364 065 204 271 801 464 830 511 704 775 384 918 675 553 578 267 803 070 901 475 788 873 102 716 245 430 447 933 415 586 457 601 797 757 176 600 333 999 551 018 178 154 949 541 484 769 638 977 896 265 663 038 399 000 034 968 671 760 009 531 304 392 728 105 966 959 958 697 064 269 075 558 311 560 224 938 200 711 491 617 797 118 263 616 370 381 028 065 974 220 916 675 770 322 086 572 168 983 570 682 197 965 401 017 645 243 829 602 914 719 248 859 315 599 429 542 047 101 471 173 047 875 015 610 099 746 736 587 596 284 111 991 493 597 730 872 037 908 726 376 088 378 653 409 064 831 869 146 389 559 970 718 184 307 933 355 796 043 554 255 335 698 662 219 475 988 387 005 004 427 602 280 094 537 252 682 849 831 196 901 963 361 759 716 690 496 400 447 215 066 548 981 291 897 816 558 424 316 905 773 600 645 811 965 831 583 980 995 255 370 497 327 197 124 378 556 430 903 680 220 766 668 022 593 767 785 079 679 502 633 299 964 554 671 217 169 946 014 758 757 220 564 054 225 676 648 784 685 539 763 372 410 125 252 489 452 229 544 404 332 299 477 725 331 517 347 878 174 575 272 220 415 508 871 240 642 347 584 781 088 247 951 579 705 474 815 860 185 318 788 536 550 845 278 585 742 374 163 031 901 703 229 103 070 899 465 375 563 218 531

und e=3 zum signieren. Dokumente werden vor dem signieren mit SHA1 gehasht, ein Padding erfolgt nicht. Wir betrachten jetzt 2 Spezialfälle:

• Die prüfende Implementierung berechnet t = se mod n, und prüft dann nur ob t mit dem gesuchten Hash beginnt. Folgen in t noch weitere Bytes nach dem Hash, so werden diese ignoriert. 


• Hier wird ebenfalls t = se mod n bei der Signaturprüfung berechnet. Eventuell vor dem Hash stehende Bytes werden ignoriert, es werden lediglich die letzten 20 Bytes (SHA1 hat eine Ausgabelänge von 20 Bytes) verglichen. 
Erstellen sie für beide F ̈alle ein Dokument ihrer Wahl sowie eine Signatur zu diesem Dokument, die von so einer Implementierung als korrekt angesehen würde.

Watermarking

Auf [url removed, login to view] finden sie ein Modul für Festplattenverschlüsselung für Linux. Inzwischen ist das Teil des offiziellen Linux-Kernels. Zur Verschlüsselung kann prinzipiell eine beliebige Chiffre gewählt werden. Die ersten Versionen verwendeten eine Abwandlung des CBC-Modus und waren anfällig für eine Watermarking-Attacke. Dabei konnte ein Angreifer eine Datei präparieren, und dann später sagen, ob sich diese Datei auf einem verschlüsselten Datenträger befindet oder nicht.

Entwickeln sie ein präpariertes JPEG-Bild, sowie ein Tool, dass man z. B. durch tool /dev/sda1 starten kann, dass einem dann anzeigt, ob sich diese Datei auf dem Device befindet oder nicht. Sie dürfen davon ausgehen, dass das EXT3 Dateisystem mit den standard-Parametern sowie die AES-Blockchiffre verwendet wird, so fern es ihnen hilft.

Handling instruction: a complete submission does not only include the source code, a documentation with derivation, sample output (screenshot) and used literature is also necessary.

RSA digital signature
We use the following 4096 bit RSA-key
n = 288 364 817 458 507 563 494 061 046 506 889 212 254 412 919 357 167 696 834 152 303 744 394 233 352 835 681 697 381 666 486 387 735 245 379 737 221 772 771 030 750 003 788 777 318 944 020 314 951 917 579 348 419 812 632 020 579 813 018 600 948 145 342 359 105 827 224 537 867 562 809 084 125 418 544 621 074 982 033 270 882 172 212 504 460 767 442 908 264 038 865 858 267 416 659 529 093 490 427 106 793 364 065 204 271 801 464 830 511 704 775 384 918 675 553 578 267 803 070 901 475 788 873 102 716 245 430 447 933 415 586 457 601 797 757 176 600 333 999 551 018 178 154 949 541 484 769 638 977 896 265 663 038 399 000 034 968 671 760 009 531 304 392 728 105 966 959 958 697 064 269 075 558 311 560 224 938 200 711 491 617 797 118 263 616 370 381 028 065 974 220 916 675 770 322 086 572 168 983 570 682 197 965 401 017 645 243 829 602 914 719 248 859 315 599 429 542 047 101 471 173 047 875 015 610 099 746 736 587 596 284 111 991 493 597 730 872 037 908 726 376 088 378 653 409 064 831 869 146 389 559 970 718 184 307 933 355 796 043 554 255 335 698 662 219 475 988 387 005 004 427 602 280 094 537 252 682 849 831 196 901 963 361 759 716 690 496 400 447 215 066 548 981 291 897 816 558 424 316 905 773 600 645 811 965 831 583 980 995 255 370 497 327 197 124 378 556 430 903 680 220 766 668 022 593 767 785 079 679 502 633 299 964 554 671 217 169 946 014 758 757 220 564 054 225 676 648 784 685 539 763 372 410 125 252 489 452 229 544 404 332 299 477 725 331 517 347 878 174 575 272 220 415 508 871 240 642 347 584 781 088 247 951 579 705 474 815 860 185 318 788 536 550 845 278 585 742 374 163 031 901 703 229 103 070 899 465 375 563 218 531
and e=3 to sign. Documents will be hashed with SHA1 before signing.
Here you can find two special cases:
• The checking implementation calculates t = se mod n and checks if t starts with the wanted hash. If there are more bytes in t after the hash they will be ignored
.
• The checking implementation calculates t = se mod n, if there are more bytes before the hash they will be ignored (only the last 20 Bytes will be compared).
Create for both cases a document of your choice and a signature for the document which would be correct for the implementation.

Watermarking
On the website http://www.saout.de/misc/dm-crypt/ you can find a module for hard disc encryption for Linux. This module is a part of the official Linux Kernel. For encryption you can always use any cipher. The first versions used a modification oft he CBC-Mode and were prone to a watermarking attack. An attacker could prepare a file and could say if these file is on an encrypted date device or not.
Create a prepared JPEG-image and a tool which you can start for example with tool /dev/sda1 which shows you if the file is on the device or not. You can assume that the EXT3 data system with the standard parameters and AES-block cipher is used, if it helps you.

Skills: Cryptography

See more: dev 401, bild. de, bild de, 233, mp3 watermarking linux, rsa 8051, linux java rsa, banner zur website, rsa algorithm jsp, php invisible image watermarking, programm zur rotation, rsa checkpoint, automatic watermarking images, invisible watermarking php

About the Employer:
( 0 reviews ) Sinsheim, Germany

Project ID: #8026262

1 freelancer is bidding on average €250 for this job

ahmsak

Hello Sir... I have a very good experience in Cryptography. Please send me a copy of the details in English. I look forward to work for you Sir. Best Regards.

€250 EUR in 3 days
(5 Reviews)
3.4