Форум программистов, компьютерный форум, киберфорум
C (Си)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.62/13: Рейтинг темы: голосов - 13, средняя оценка - 4.62
0 / 0 / 0
Регистрация: 11.01.2015
Сообщений: 6

Цифровая подпись файла на Си

10.10.2016, 10:29. Показов 2705. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Требуется написать программу на си для цифровой подписи файлов и её проверки. Как я понимаю, подпись должна храниться в самом файле и первое, что приходит в голову - приписать её в конец. Но тогда файл будет нечитабельным. Как всё таки подписывать файлы, чтобы это не сказывалось на их читабельности?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
10.10.2016, 10:29
Ответы с готовыми решениями:

Цифровая подпись файла и RSA: Требуется гарантировать достоверность владельца файла и его содержимого
Здравствуйте, Требуется гарантировать достоверность владельца файла и его содержимого. Т.е. есть коллекция файлов(текстовые конфиги...

Цифровая подпись
Добрый день! Реализую цифровую подпись на основе алгоритма RSA. Хеширование на основе алгоритма MD5. Результатом хеширования является...

Цифровая подпись
Всем привет. Ребята у меня к вам просьба не могли бы вы перевести этот код ...

1
3176 / 1935 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
10.10.2016, 14:05
Кто у вас "читает" файл, и кому и зачем нужна их "читаемость"?

Подписи, естественно, в конце файла и приписываются.

VMware-workstation-full-12.5.0-4352439.exe
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
 -*-   CC 1.3 alpha 12  (Crypto Checker)  *  Copyright (c)  Aleph 2000-2016   -*-
 
 + [.\VMware-workstation-full-12.5.0-4352439.exe] File Header Info:
 
##      Name       VirtSize   RVA        PhysSize   Offset     Attr
-----   --------   --------   --------   --------   --------   --------
    1   .text      00052C01   00001000   00052E00   00000400   60000020
    2   .rdata     0001AD80   00054000   0001AE00   00053200   40000040
    3   .data      0000E4FC   0006F000   0000A800   0006E000   C0000040
    4   .rsrc      0009DAE4   0007E000   0009DC00   00078800   40000040
    5   .reloc     00008FFE   0011C000   00009000   00116400   42000040
    6   < ovrl >   00000000   00000000   12E85028   0011F400   00000000
 
 * ImageBase: 00000000`00400000
 
EntryPoint [Sect: 1] 00036CC0 / .004378C0
 
 
EP minidump:
---------|------------+-----------+-----------+-----------|----+---+---+----
00036CC0:  E8 D7 95 00 00 E9 79 FE FF FF CC CC CC CC CC CC  иЧ•..йyюяяММММММ
00036CD0:  55 8B EC 57 8B 7D 08 33 C0 83 C9 FF F2 AE 83 C1  U‹мW‹}.3АѓЙят®ѓБ
00036CE0:  01 F7 D9 83 EF 01 8A 45 0C FD F2 AE 83 C7 01 38  .чЩѓп.ЉE.эт®ѓЗ.8
00036CF0:  07 74 04 33 C0 EB 02 8B C7 FC 5F C9 C3 8B FF 55  .t.3Ал.‹Зь_ЙГ‹яU
---------|------------+-----------+-----------+-----------|----+---+---+----
 
Overlay minidump:
---------|------------+-----------+-----------+-----------|----+---+---+----
0011F400:  52 57 4D 56 03 00 00 00 56 4D 77 61 72 65 57 6F  RWMV....VMwareWo
0011F410:  72 6B 73 74 61 74 69 6F 6E 2E 6D 73 69 00 00 00  rkstation.msi...
0011F420:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
0011F430:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
---------|------------+-----------+-----------+-----------|----+---+---+----
 
File / Header CheckSum: 12FABE46 / 12FABE46
 
Linker version: 10.00                             OS version:          5.00
Timestamp:      57CF7B46 | 2016-09-07 | 02:28:22  Subsystem version:   5.01
Machine:        014C  <Intel 386 or later>        DLL flags:           8140
 
 
 + Crypto Check for file '.\VMware-workstation-full-12.5.0-4352439.exe' [00000000:12FA4428]
 
Setting:
--------
 
   DB Timestamp      :  Tue Mar  8 11:54:11 2016
   DB Entries total  :  4246
   Scan method       :  QUICK
   Signatures in use :  7780
 
 * Built to find everything
 
##        ss  Section     Offset    VA         Event             ASCII      T Method
--------  --  ----------  --------  ---------  --------          -----      - --------
00000001                  00000000             4D5A9000          MZђ.         Executable!: EXE MZ Header Signature
00000002                  00000040             0E1FBA0E00B409CD21B8014CCD     @ Linker: Microsoft Win32 DOS stub ; 208 bytes
00000003                  000000E0             52696368          Rich         Microsoft: Linker 'Rich' marker
00000004                  000000F8             50450000          PE..         Executable!: Image NT (PE) Signature
00000005  01  [.text   ]  000144FB  .004150FB  8FBC0000          Џј..         PRNG: C++ 11 minstd LCG rand() increment
00000006  01  [.text   ]  00036B65  .00437765  4D5A0000          MZ..         Executable!: EXE MZ Header Signature
00000007  01  [.text   ]  00038920  .00439520  8B4424088B4C24100BC88B4C24     > Entry: Compiler: Microsoft Visual C++ 6.0..12.0 (RTL: _allmul)
00000008  01  [.text   ]  00038AE0  .004396E0  53568B4424180BC075188B4C24     > Entry: Compiler: Microsoft Visual C++ 6.0..12.0 (RTL: _aulldiv)
00000009  01  [.text   ]  00045959  .00446559  4D5A0000          MZ..         Executable!: EXE MZ Header Signature
0000000A  02  [.rdata  ]  000536A8  .004544A8  iphlpapi                     U 'iphlpapi.dll' { 000C }
0000000B  02  [.rdata  ]  0005373C  .0045453C  cabinet                      U 'cabinet.dll' { 000B }
0000000C  02  [.rdata  ]  00053834  .00454634  asn1                         U 'ntasn1.dll' { 000A }
0000000D  02  [.rdata  ]  0005399C  .0045479C  Software\Microsoft\Windows   A 'Software\Microsoft\Windows\CurrentVersion\RunOnce' { 0031 }
0000000E  02  [.rdata  ]  00053A51  .00454851  .-.                          U GUID [VB style]: '{DA5E371C-6333-3D8A-93A4-6FD5B20BCC6E}' { 0049 GUID_DA5E371C.6333.3D8A.93A4.6FD5B20BCC6E_00454851 }
0000000F  02  [.rdata  ]  00053AA1  .004548A1  .-.                          U GUID [VB style]: '{196BB40D-1578-3D01-B289-BEFC77A11A1E}' { 0049 GUID_196BB40D.1578.3D01.B289.BEFC77A11A1E_004548A1 }
00000010  02  [.rdata  ]  00053AF1  .004548F1  .-.                          U GUID [VB style]: '{5FCE6D76-F5DC-37AB-B2B8-22AB8CEDB1D4}' { 0049 GUID_5FCE6D76.F5DC.37AB.B2B8.22AB8CEDB1D4_004548F1 }
00000011  02  [.rdata  ]  00053B41  .00454941  .-.                          U GUID [VB style]: '{9BE518E6-ECC6-35A9-88E4-87755C07200F}' { 0049 GUID_9BE518E6.ECC6.35A9.88E4.87755C07200F_00454941 }
00000012  02  [.rdata  ]  00053B91  .00454991  .-.                          U GUID [VB style]: '{4B6C7001-C7D6-3710-913E-5BC23FCE91E6}' { 0049 GUID_4B6C7001.C7D6.3710.913E.5BC23FCE91E6_00454991 }
00000013  02  [.rdata  ]  00053BE1  .004549E1  .-.                          U GUID [VB style]: '{1F1C2DFC-2D24-3E06-BCB8-725134ADF989}' { 0049 GUID_1F1C2DFC.2D24.3E06.BCB8.725134ADF989_004549E1 }
00000014  02  [.rdata  ]  00053C31  .00454A31  .-.                          U GUID [VB style]: '{AD8A2FA1-06E7-4B0D-927D-6E54B3D31028}' { 0049 GUID_AD8A2FA1.06E7.4B0D.927D.6E54B3D31028_00454A31 }
00000015  02  [.rdata  ]  00053C81  .00454A81  .-.                          U GUID [VB style]: '{710F4C1C-CC18-4C49-8CBF-51240C89A1A2}' { 0049 GUID_710F4C1C.CC18.4C49.8CBF.51240C89A1A2_00454A81 }
00000016  02  [.rdata  ]  00053CD1  .00454AD1  .-.                          U GUID [VB style]: '{6CE5BAE9-D3CA-4B99-891A-1DC6C118A5FC}' { 0049 GUID_6CE5BAE9.D3CA.4B99.891A.1DC6C118A5FC_00454AD1 }
00000017  02  [.rdata  ]  00053D21  .00454B21  .-.                          U GUID [VB style]: '{837B34E3-7C30-493C-8F6A-2B0F04E2912C}' { 0049 GUID_837B34E3.7C30.493C.8F6A.2B0F04E2912C_00454B21 }
00000018  02  [.rdata  ]  00053D71  .00454B71  .-.                          U GUID [VB style]: '{071C9B48-7C32-4621-A0AC-3F809523288F}' { 0049 GUID_071C9B48.7C32.4621.A0AC.3F809523288F_00454B71 }
00000019  02  [.rdata  ]  00053DC1  .00454BC1  .-.                          U GUID [VB style]: '{7299052b-02a4-4627-81f2-1818da5d550d}' { 0049
 
...
 
00002239                  12F9EEDE             .<.<.<.O.b.s.o.l.e.t.e.>.>   U Str: Obsolete marker ; 28 bytes { 000E Obsolete_marker_12F9EEDE }
0000223A                  12F9EF50             Copyright                    A '."Copyright (c) 1997 Microsoft Corp.1.0.' { 0028 }
0000223B                  12F9F1C0             Copyright                    A '."Copyright (c) 1997 Microsoft Corp.1.0.' { 0028 }
0000223C                  12F9F671             http://                      A '3http://crl.microsoft.com/pki/crl/products/CSPCA.crl0H' { 0036 }
0000223D                  12F9F6C2             http://                      A ',http://www.microsoft.com/pki/certs/CSPCA.crt0.' { 002F }
0000223E                  12F9F83C             Copyright                    A '."Copyright (c) 1997 Microsoft Corp.1.0.' { 0028 }
0000223F                  12F9FAAE             Copyright                    A '."Copyright (c) 1997 Microsoft Corp.1.0.' { 0028 }
00002240                  12F9FDD6             Cipher                       A '..nCipher DSE ESN:85D3-305C-5BCF1%0#' { 0024 }
00002241                  12F9FF9B             http://                      A '3http://crl.microsoft.com/pki/crl/products/tspca.crl0H' { 0036 }
00002242                  12F9FFEC             http://                      A ',http://www.microsoft.com/pki/certs/tspca.crt0.' { 002F }
00002243                  12FA028C             http://                      A '.http://microsoft.com0.' { 0017 }
00002244                  12FA0774             Symantec Time Stamping       A '.'Symantec Time Stamping Services CA - G20' { 002A }
00002245                  12FA0905             http://                      A '.http://ocsp.thawte.com0.' { 0019 }
00002246                  12FA0942             http://                      A '.http://crl.thawte.com/ThawteTimestampingCA.crl0.' { 0031 }
00002247                  12FA09AE             TimeStamp                    A '..TimeStamp-2048-10.' { 0014 }
00002248                  12FA0AB8             Symantec Time Stamping       A '.'Symantec Time Stamping Services CA - G20...121018000000Z..201229235959Z0b1' { 004C }
00002249                  12FA0B38             Symantec Time Stamping       A '.+Symantec Time Stamping Services Signer - G40' { 002E }
0000224A                  12FA0CE6             http://                      A '.http://ts-ocsp.ws.symantec.com07' { 0021 }
0000224B                  12FA0D12             http://                      A '+http://ts-aia.ws.symantec.com/tss-ca-g2.cer0<' { 002E }
0000224C                  12FA0D50             http://                      A '+http://ts-crl.ws.symantec.com/tss-ca-g2.crl0(' { 002E }
0000224D                  12FA0D94             TimeStamp                    A '..TimeStamp-2048-20.' { 0014 }
0000224E                  12FA0F7B             Terms of use                 A '.2Terms of use at https://www.verisign.com/rpa (c)101.0,' { 0038 }
0000224F                  12FA1058             Digital ID Class             A '.5Digital ID Class 3 - Microsoft Software Validation v21.0.' { 003B }
00002250                  12FA1201             http://                      A '/http://csc3-2010-crl.verisign.com/CSC3-2010.crl0D' { 0032 }
00002251                  12FA1259             https://                     A '..https://www.verisign.com/rpa0.' { 0020 }
00002252                  12FA12A9             http://                      A '.http://ocsp.verisign.com0;' { 001B }
00002253                  12FA12CF             http://                      A '/http://csc3-2010-aia.verisign.com/CSC3-2010.cer0.' { 0032 }
00002254                  12FA157B             (c)                          A '.1(c) 2006 VeriSign, Inc. - For authorized use only1E0C' { 0037 }
00002255                  12FA17A4             http://                      A 'Dhttp://crl.microsoft.com/pki/crl/products/MicrosoftCodeVerifRoot.crl0.' { 0047 }
00002256                  12FA1A7E             (c)                          A '.1(c) 2006 VeriSign, Inc. - For authorized use only1E0C' { 0037 }
00002257                  12FA1B6B             Terms of use                 A '.2Terms of use at https://www.verisign.com/rpa (c)101.0,' { 0038 }
00002258                  12FA1D39             https://                     A '..https://www.verisign.com/cps0*' { 0020 }
00002259                  12FA1D63             https://                     A '0...https://www.verisign.com/rpa0' { 0021 }
0000225A                  12FA1DD3             http://                      A 'jФH.,{..0%.#http://logo.verisign.com/vslogo.gif04' { 0031 }
0000225B                  12FA1E14             http://                      A '#http://crl.verisign.com/pca3-g5.crl04' { 0026 }
0000225C                  12FA1E55             http://                      A '.http://ocsp.verisign.com0.' { 001B }
0000225D                  12FA206C             Terms of use                 A '.2Terms of use at https://www.verisign.com/rpa (c)101.0,' { 0038 }
0000225E                  12FA2163             http://                      A '.http://www.vmware.com/0.' { 0019 }
0000225F                  12FA22E4             Symantec Time Stamping       A '.'Symantec Time Stamping Services CA - G2' { 0029 }
00002260                  12FA27CD             http://                      A '.http://sv.symcb.com/sv.crl0f' { 001D }
00002261                  12FA2810             https://                     A '..https://d.symcb.com/cps0%' { 001B }
00002262                  12FA2838             https://                     A '.https://d.symcb.com/rpa0.' { 001A }
00002263                  12FA2882             http://                      A '.http://sv.symcd.com0&' { 0016 }
00002264                  12FA28A3             http://                      A '.http://sv.symcb.com/sv.crt0.' { 001D }
00002265                  12FA2A93             (c)                          A '.1(c) 2006 VeriSign, Inc. - For authorized use only1E0C' { 0037 }
00002266                  12FA2CF9             http://                      A '.http://s2.symcb.com0.' { 0016 }
00002267                  12FA2D49             http://                      A '..http://www.symauth.com/cps0(' { 001E }
00002268                  12FA2D71             http://                      A '0...http://www.symauth.com/rpa00' { 0020 }
00002269                  12FA2DA1             http://                      A '.http://s1.symcb.com/pca3-g5.crl0.' { 0022 }
0000226A                  12FA308B             (c)                          A '.1(c) 2006 VeriSign, Inc. - For authorized use only1E0C' { 0037 }
0000226B                  12FA32B4             http://                      A 'Dhttp://crl.microsoft.com/pki/crl/products/MicrosoftCodeVerifRoot.crl0.' { 0047 }
0000226C                  12FA3621             http://                      A '.http://www.vmware.com/0/' { 0019 }
0000226D                  12FA3B0F             https://                     A '.&https://www.globalsign.com/repository/0.' { 002A }
0000226E                  12FA3B6C             http://                      A '5http://crl.globalsign.com/gs/gstimestampingsha2g2.crl0X' { 0038 }
0000226F                  12FA3BBF             http://                      A '<http://secure.globalsign.com/cacert/gstimestampingsha2g2.crt0.' { 003F }
00002270                  12FA3FD4             https://                     A '.&https://www.globalsign.com/repository/06' { 002A }
00002271                  12FA400E             http://                      A '%http://crl.globalsign.net/root-r3.crl0.' { 0028 }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
10.10.2016, 14:05
Помогаю со студенческими работами здесь

Цифровая подпись
Всем привет. Не совсем уверен что пишу данную тему в нужном разделе. Хочу подписать цифровой подписью файл. Для этого я создал свой...

Электронная цифровая подпись
Использование системных возможностей электронной цифровой подписи документов как средства удостоверения их подлинности???????

Цифровая подпись драйверов
Хотел отключить проверку, а тут не хватает одного пункта

DSA цифровая подпись
Пытаюсь написать простую программу цифровой подписи DSA и никак не могу понять, почему v и r никогда не становятся равны между собой.. ...

Электронно Цифровая подпись!
Ребята нужна помощь, выручайте!!! Надо сделать Электронно цифровую подпись (ЭЦП), но почему то не получается. Закрузил прогу КРИПТОПРО...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru