-
Notifications
You must be signed in to change notification settings - Fork 26
/
ChangeLog
830 lines (553 loc) · 25.7 KB
/
ChangeLog
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
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
virgil ChangeLog (Sorted per date)
= Version 2.6.4 released 2020-07-04
## Changes
* [Ruby] Dropped version 2.0.0-p648
* [Ruby] Dropped version 2.2.6
* [Ruby] Dropped version 2.3.3
* [Ruby] Dropped version 2.4.0
* [Ruby] Added version 2.5.8
* [Ruby] Added version 2.6.6
* [Ruby] Added version 2.7.1
* [NodeJS] Dropped version 6
* [NodeJS] Dropped version 8
* [NodeJS] Dropped version 11
* [NodeJS] Update version 10.9.0 -> 10.21.0
* [PHP] Dropped version 7.1
* [PHP] Added version 7.4
* [Python] Dropped version 3.4
= Version 2.6.3 released 2019-05-14
## Changes
* [PHP] Drop version 5.6
* [PHP] Drop version 7.0
* [PHP] Add version 7.3
= Version 2.6.2 released 2018-11-07
## Changes
* [Python] Add python-3.7 builds
* [NodeJS] Drop version 4.x
* [NodeJS] Drop version 7.x
* [NodeJS] Drop version 9.x
* [NodeJS] Update version 6.14.2 -> 6.14.4
* [NodeJS] Update version 8.11.2 -> 8.12.0
* [NodeJS] Update version 10.1.0 -> 10.9.0
* [NodeJS] Added version 11.1.0
* [CI] Add php-7.2 build to the travis-ci
= Version 2.6.1 released 2018-10-05
## Changes
* [Build] Add 64-bits architectures for WatchOS
* [Build] !!! Drop support of the i386 architecture for MacOS
= Version 2.6.0 released 2018-09-07
## Features
* [Lib] Add class VirgilSeqCipher that provides sequential encryption and decryption
* [Lib] Add class VirgilSeqSigner that provides sequential signing and verifying
= Version 2.4.6 released 2018-06-21
## Features
* [PHP] Make available to build PHP wrapper on Windows
* [CI] Add build of PHP binaries on Jenkins and publish them to CDN
* [Build] Add universal CMake module 'FindPHP.cmake' that finds PHP on Windows and Unix
* [Build] Add building of target 'php' with 'build.bat' script
## Changes
* [JS] Update NodeJS version v10.1.0 -> v10.4.1
* [JS] Update NodeJS version v9.11.1 -> v9.11.2
* [JS] Update NodeJS version v8.11.2 -> v8.11.3
* [JS] Update NodeJS version v6.14.2 -> v6.14.3
* [SWIG] Place includes at the 'begin' SWIG section instead of 'header' section
## Bugfix
* [Lib] Fix crash on Pythia object creation for NodeJS versions >= 10.0
= Version 2.4.5 released 2018-05-30
## Changes
* [Build] Redesign 'build.sh' argument parsing - use key-value arguments instead of positional arguments
## Features
* [JS] Add builds with Pythia for platforms: AsmJS and Webasm - now distributed as separate bundles
= Version 2.4.4 released 2018-05-17
## Bugfix
* [Lib] Add missed Pythia headers to the all-in-one header
## Features
* [Apple] Enable Pythia for platforms: WatchOS MacOS TVOS
* [Apple] Add 'module.modulemap' for Apple frameworks
* [JS] Add support for nodejs-10.1.0
* [Java] Add automatic loading of the JNI native library
## Changes
* [Lib] Add restriction on the 'keyMaterial' length for deterministic key generation algorithms (at least 32 bytes)
* [Java] Downgrade target Java to 1.7
* [JS] Disable Pythia for platfroms: AsmJS and Webasm
* [JS] Update nodejs version: 4.8.7 -> 4.9.1'
* [JS] Update nodejs version: 6.13.0 -> 6.14.2'
* [JS] Update nodejs version: 8.9.4 -> 8.11.2'
* [JS] Update nodejs version: 9.5.0 -> 9.11.1'
= Version 2.4.3 released 2018-05-08
## Features
* [FEATURE] Add support of PHP-7.2
## Bugfix
* [Build] Force install 'pythia' libraries to the 'lib' directory
* [Build] Fix passing 'multi-thread' flag to the 'pythia' library
* [Build] Fix Golang CGO produce error message on the CentOS about duplication of `pythia_buf_new()' function.
= Version 2.4.2 released 2018-05-03
## Changes
* [Build] Use 'lib' for CMake 'INSTALL_LIB_DIR_NAME' option by default - regression fix
= Version 2.4.1 released 2018-05-03
## Changes
* [Docker] Update Go version & enable Pythia
* [CI] Add build of Golang binaries on Jenkins and publish thme to CDN
= Version 2.4.0 released 2018-05-03
## Features
* [Lib] Add experimental feature - Pythia algorithm
* [Lib] Add experimental feature - deterministic Key Pair generation
* [Lib] Add ability to make runtime check of VirgilConfig
## Changes
* [Build] Replace ad-hoc android.toolchaon.cmake file with file from NDK
* [Build] Replace deprecated CMake functions swig_add_module -> swig_add_library
* [Build] Take default install directory names from GNUInstallDirs
* [CI] Change Android NDK in the Jenkinsfile to version r16b
* [iOS] Change minimum supported iOS version to 9.0
* [JS] Always generate signle file in browser js builds to make bundling easier
* [JS] Export JS library as UMD module in web browsers
## Bugfix
* [.NET] Fix binaries for .NET iOS, WatchOS and TvOS
* [.NET] Fix interoperating with unmanaged code in .NET Android
* [Golang] Fix Golang build with CMake 3.11
= Version 2.3.2 released 2018-04-11
## Bugfix
* [CI] Fix and extend docs publishing
= Version 2.3.1 released 2018-04-10
## Features
* [.NET] Add suport for .net-core Linux, Mac, Windows
## Changes
* [CI] Update Dockerfile_Golang with cmake 3.10.2 and virgil-cryoto go v5
* [DOC] Reviewed README.md
## Bugfix
* [Build] Fix 'missing extension' for C# assembly
= Version 2.3.0 released 2018-02-19
## Bugfix
* [Lib] Fix error when export plain RSA 4096 private key to DER format
* [CI] Fix Travis CI fails on a pull request
## Changes
* [Build] Update CMake Apple toolchain file
* [Build] Build Apple dynamic framework instead of static
* [Build] Add CMake variable BUILD_LIBRARY_FRAMEWORK
* [Build] Change required CMake version to 3.10
* [Build] Replace CMake option DOXYGEN_EXCLUDE_PRIVATE with reverse option DOXYGEN_EXTRACT_PRIVATE
* [Build] Replace deprecated CMake macros 'SWIG_ADD_MODULE' within PHP
* [PNaCl] Drop of Google PNaCl platform support (replaced with WebAssembly)
* [CI] Dockerfile update golang version to 1.10
* [PHP] Restore SWIG feature 'director:except'
* [Lib] Update license across all files
## Features
* [JS] Add support for the WebAssembly platform
* [JS] Add support for NodeJS versions 7.x, 8.x, 9.x
* [Build] Add ability to build any NodeJS version supported by SWIG
* [Lib] Add file 'VirgilConfig.h'
## Improvements
* [CI] Improve Travis CI build time by using caches
= Version 2.2.5 released 2018-02-01
## Bugfix
* [Lib] Fixed memory leaks in the VirgilHash
* [Lib] Fix memory leaks by updating underlying MbedTLS library
- Fix memory leaks in the ECIES algorithm
- Fix memory leaks when parse PKCS#8 encrypted key without password
= Version 2.2.4 released 2018-01-30
## Changes
* [CI] Dockerfile update golang version to 1.9.2
## Bugfix
* [Lib] Downgrade C++11 constructor inheritance - SWIG does not support it
* [Doc] Fix doxygen warnings
= Version 2.2.3 released 2017-08-07
## Changes
* [Lib] Change the way PFS algorithm derive SessionID and AD
## Improvements
* [Doc] Remove broken (stale) links from the README.md
= Version 2.2.2 released 2017-06-24
## Features
* [FEATURE] Add support for PHP7
## Changes
* Drop support for PHP versions 5.4, 5.5
## Bugfix
* Fix test for gcc versions < 5
* Run PHP tests more precisely (do not override path to extensions)
= Version 2.2.1 released 2017-06-14
## Bugfix
[Lib] Make .NET wrappers library static for iOS, Apple watchOS, Apple tvOS, macOS platforms
## Improvements
[Doc] Extend documentation of the VirgilKeyPair::Algorithm type
= Version 2.2.0 released 2017-06-04
## Features
[Lib] Add module - Perfect Forward Secrecy
[Lib] Expose Low Level API to the wrappers
## Improvements
[Lib] Speed optimization for sign / verify operations
[Lib] Speed optimization for VirgilAsymmetricCipher operations
= Version 2.1.2 released 2017-03-22
## Bugfix
[Build] Fix MSVC build by updating underlying MbedTLS library to the version: mbedtls-2.4.2-virgil-2.0.3
= Version 2.1.1 released 2017-03-22
## Bugfix
[Lib] Fix: Got unexpected error when process encrypted private key and omit password
[Lib] Update to mbed TLS version 2.4.2
= Version 2.1.0 released 2017-03-16
## Bugfix
[OSX] Add minimum required OSX version (Yosemite)
[Lib] Fix extra compiler warnings and documentation warnings
## Changes
[OSX] Add minimum required OSX version (Yosemite)
## Features
[CI] Add Dockerfile with Golang environment
[Lib] Expose low level API for targets that use C/C++ headers
[Lib] Add AES-128 to the symmetric cipher
= Version 2.0.7 released 2017-03-06
## Bugfix
* [Doc] Fix doxygen warnings
= Version 2.0.6 released 2017-02-24
## Features
* [Ruby] Add support for ruby versions: 2.2, 2.3, 2.4
= Version 2.0.5 released 2017-02-20
## Bugfix
* [Ruby] Fix linkage issue - link Ruby wrapper to the native Ruby ruby library
## Changes
* [Ruby] Add flag '-autorename' for Ruby Swig wrapper, which apply Ruby naming conventions
= Version 2.0.4 released 2017-01-10
## Bugfix
* [GO] Fix: VirgilByteArray is missed in Golang wrapper
* [Lib] Fix: Got exception when encrypt data in 32 bit architecture
* [PHP] Fix: Some constants are missed in the PHP wrapper
## Changes
* [Lib] Add getter VirgilCryptoException::condition()
* [Build] Add compiler version to the built archive name (optional)
= Version 2.0.3 released 2016-12-08
## Bugfix
* [.NET] Fix namespaces in the .NET wrapper's addons
* [Lib] Fix VirgilStreamDataSource::hasData() infinite if closed file stream is given
## Changes
* [Build] Use static linkage to windows runtime libraries for wrappers
* [Lib] Remove restriction for ASN.1 length
* [Lib] Update mbed TLS dependency to version 2.4.0
## Features
* [GO] Add Go to the wrappers
= Version 2.0.2 released 2016-11-02
## Bugfix
* [Lib] Fix: VirgilChunkCipher decryption returns no data, if data was read by one pass
* [Lib] Fix: Call to VirgilCipherBase::customParams() leads to exception (AsmJS)
= Version 2.0.1 released 2016-10-27
## Bugfix
* Fix: Send empty data to VirgilDataSink can lead to an unpredictable behavior
= Version 2.0.0 released 2016-10-03
## Bugfix
* Fix: Use of the same Nonce for chunks is insecure (VirgilChunkCipher)
## Features
* [Lib] Implement Ed25519 and X25519 key parse and key write [draft-ietf-curdle-pkix-01]
* [Lib] Implement EdDSA [draft-irtf-cfrg-eddsa-08]
* [Lib] Implement X25519 [RFC7748]
## Changes
* [Lib] Move codebase to the C++11 standard
* [Lib] Implement new error handling model
* [Lib] VirgilPBE -> replace named constructors with constructor that accepts enumeration
* [Lib] VirgilKDF -> replace named constructors with constructor that accepts enumeration
* [Lib] VirgilHash -> replace named constructors with constructor that accepts enumeration
* [Lib] VirgilSymmetricCipher -> replace named constructors with constructor that accepts enumeration
* [Lib] Replace enums with scoped enums
* [Lib] Remove AS3 support
* [Lib] Drop C# class CryptoHelper
* [Lib] Remove unimplemented elliptic curves
* [Lib] Remove enumeration value: VirgilKeyPair::Type::Default
* [Lib] Add functions: 'encryptPrivateKey()' and 'decryptPrivateKey()' (VirgilKeyPair)
* [Lib] Embed ContentInfo to the cryptogram by default
* [Lib] Use enum VirgilHash::Algorithm in VirgilPBKDF
* [Lib] Generate Ed25519 keys as recommended
* [Lib] Make wrappers compatible with C++11 and API v2.0
* [Lib] Convert C++ exceptions to JS exceptions
* [Lib] Add keys format converter PEM to DER and vice versa
* [Lib] Change minimum required chunk size for VirgilBytesDataSource
* [Lib] Redesign VirgilChunkCipher interface
* [Lib] Change name for Apple frameworks: VirgilCrypto.framework to VSCCrypto.framework
* [Build] Set CMake option: ANDROID_DEFAULT_NDK_API_LEVEL to 9
* [Build] Remove support of OS X universal binaries
* [Doc] Created migration guide from version 1.8 to 2.0
* [CI] Use gcc-5 on Travis CI
* [CI] Use clang-3.6 on Travis CI
## Improvements
* [Lib] Add AMD64 optimizations for Ed25519 library for *nix systems
* [Build] Fix GCC warning: specialization in different namespace [-fpermissive]
* [Build] Add wrapper's include directories as SYSTEM
* [CI] Minimize build matrix in Travis CI
= Version 1.8.2 released 2016-08-09
## Bugfix
* [Java] Fix: Application crash on android device if stream is used for crypto operations
= Version 1.8.1 released 2016-06-30
## Bugfix
* [Lib] Remove stale restriction on the password length for the private key
= Version 1.8.0 released 2016-06-22
## Features
* [Lib] Add ability to extract public key from the private key: class VirgilKeyPair
* [Lib] Move class VirgilRandom to the high level API
= Version 1.7.0 released 2016-06-11
## Features
* [Lib] Add ability to produce minimum encryption output: class VirgilTinyCipher (experemental)
* [CI] Build .NET wrapper for linux OS
= Version 1.6.0 released 2016-05-11
## Features
* [Lib] Add functionality that check whether recipient with given identifier exists or not
* [NodeJS] Make builds for Node.js versions: 4.4.4, 5.9.1, 6.1.0
* [Build] Implement in-house package manager based on CMake
= Version 1.5.1 released 2016-04-29
## Bugfix
* [AsmJS] Inner enumerations of class VirgilPBKDF: Algorithm and Hash are not accessible from AsmJS wrapper
= Version 1.5.0 released 2016-04-26
## Features
* [Lib] Add PBKDF2 algoritm
* [Lib] Add ability to reset password on the private key
## Changes
* [Lib] Change default generated curve to the Curve25519
= Version 1.4.0 released 2016-04-12
## Features
* [Lib] Add ability to use Curve25519 for all crypo operations (EXPEREMENTAL)
* [Build] Add feature prefix to the lib version
* [Build] Add .net build for OS X (Jenkinsfile)
## Changes
* [Build] Make external dependencies installation as optional
* [Build] Add feature prefix to the lib version, make impact only for archive name
= Version 1.3.4 released 2016-03-27
## Bugfix
* [Lib] Fix: Corrupted ContentInfo structure if recipients count more then 6
## Changes
* [Build] Generate SHA-256 checksum file for every target archive
= Version 1.3.3 released 2016-03-22
## Changes
* Change default keypair curve to the 384-bits NIST
= Version 1.3.2 released 2016-03-21
## Features
* [Build] Add python3 build support
## Changes
* [Build] Perform speed optimization of the build process
## Bugfix
* [Java] Add missed class 'VirgilStreamDataSource' to the Java wrapper
= Version 1.3.1 released 2016-03-14
Bugfix:
* Fix error when parse RSA private key with key length greater then 3072 bit
= Version 1.3.0 released 2016-03-07
Bugfix:
* [.NET] Fix decrypt and sign methods when passing null private key password
Changes:
* Update underlying MbedTLS library to version 2.2.1, which includes fix of critical security issues.
* Use modern PBE algorithm: PKCS#5 PBES2 with SHA-384 and AES-256-CBC.
* Temporary disable SWIG feature: Exception unrolling. Impact classes: VirgilStreamSigner and VirgilStreamSigner.
= Version 1.2.2 released 2016-01-15
Bugfix:
* [Build] Fix build issue on Jenkins - php-5.5 and php-5.6 build on centos was lost.
Changes:
* [Build] Archive target binaries to the folder with archive name (build.bat).
* [Build] Rename artifacts extensions from '.tar.gz' to 'tgz'.
Features:
* [Build] Add VERSION file to Jenkins 'install' directory when build.
= Version 1.2.1 released 2016-01-14
Changes:
* [Build] Make default value of platform version shorter - keep only major and minor versions.
* [Build] Replace env.sh script with VIRGIL_CRYPTO_ENV_SCRIPT environment variable.
* [Build] Add file with current version of CryptoLib to result directory.
* [Build] Clear 'install' directory before build (build.sh).
* [Build] Remove redundant 'build_all.sh' script file.
Features:
* [Build] Add batch file to simplify build process on windows os.
* [Build] Add windows build to Jenkinsfile.
= Version 1.2.0 released 2016-01-08
Bugfix:
* [Lib] Fix crypto module name in ASM.JS example.
* [Build] Find mbedtls configuration file for target platfrom and language.
Changes:
* [Lib] Replace AES-CBC with AES-GCM as default symmetric algortihm.
* [Lib] Add restriction to password length.
* [Lib] Remove function virgil::crypto::string_zeroize() from the wrappers.
* [Lib] Remove action of dynamic loading JNI module from Java wrapper.
* [Build] Exclude c++ tests from embedded platforms.
* [Build] Rename wrapper 'csharp' to 'net'.
* [Build] Rename interanl CMake variable 'PLATFORM_FULL_NAME' to 'LIB_FULL_NAME'.
* [Build] Change library name 'virgil' to 'virgil-crypto'.
* [CI] Change ${PLATFORM} to ${LANG}.
* [CI] Lowercase value of the 'LANG' parameter.
Features:
* [Lib] Add methods to check and validate KeyPair.
* [Lib] Add CryptoHelper class for .NET wrapper.
* [Lib] Add parametrized method for KeyPair generation.
* [Build] Add Bitcode section to all iOS, Apple WatchOS, Apple TVOS targets.
* [Build] Unify LANG / PLATFROM configuration during build.
* [Build] Add frameworks for all available Apple platforms (Mac OS, iOS, watchOS, tvOS).
* [Build] Add library build scripts for unix-like OS.
Improvements:
* [Lib] Fix misspelling in header guard statement.
* [Lib] Add License header to the Java source files.
* [Lib] Add License header to the .NET source files.
= Version 1.1.0 released 2015-10-02
Bugfix:
* Fix some warnings by remove unused local variables.
* Fix build on Travis-CI: replace 'wget' command with 'curl -L -O' command.
Changes:
* Publish docs only from branch: 'release'.
* Update SWIG and CMake versions on the travis-ci.
* Change CMake minimum required version to 3.2.
* Remove 'using' statements from header files.
* Update underlying 'mbedtls' library to version 1.3.14.
Features:
* Add support of node.js version 0.12 and higher.
* Add support of node.js version v4.0.1 and higher.
* Add support of switch node.js versions between v0.12 and v4.1.0 during compilation.
* Publish documentation to the GitHub Pages.
* Add ability to create package from the library installed components.
* Add ability to read and write ASN.1 boolean value.
* Add module to convert any Json object to the ASN.1 structure.
* Duplicate VirgilByteArray utility functions to the VirgilByteArrayUtils.
* Add Java platform.
* Add Android NDK toolchain.
* Publish Coverity Scan build with Travis-CI.
* Add support of Xcode 7.
* Add ability to generate keys with different parameters.
Improvements:
* Travis CI - Migrating from legacy to container-based infrastructure.
* Remove redundant 'using' statements from generated wrapper's code.
* Improve 'zeroize' function to prevent compiler optimization.
= Version 1.0.1 released 2015-08-27
Bugfix:
* Add required "include" file.
Changes:
* Use last bugfixes of mbedtls-1.3.
= Version 1.0.0-rc1 released 2015-07-01
Bugfix:
* Fix version number calculation.
* Fix doxygen warnings.
Features:
* Add ability to generate documentation as part of the building process.
Improvements:
* Add Idea IDE files to .gitignore.
* CI: Make build output verbose.
* CI: Print CMake version.
Changes:
* Change license copyright date to 2015.
* Move namespaces "asn1" and "cms" to the "foundation".
* Move class "VirgilContentInfo" to the "cms" namespace.
* Add uppercase namespaces to the .NET assembly.
* Change name for .Net Crypto library to Virgil.Crypto.dll.
* Make namespace 'virgil' clean.
* Add default C# implementation for VirgilDataSource and VirgilDataSink.
* Emscripten: Switch off memory optimization.
* Emscripten: Change example to conform new library interface.
* PHP Tests: Remove expected exception message from the test requirement, as several valid messages are exist.
* CMake: Add -fPIC compiler flag to the library.
* CI: Install latest CMake.
* Remove dependency from Virgil Public Keys Service.
* Move CLI to the separate repository.
= Version 0.9.0 released 2015-05-18
Bugfix:
* Lib: Fix marshalling public key with certificate if it has DER format.
* Lib: Fix 64520, 64521 - Uninitialized pointer field.
* Lib: Fix 64515, 64516, 64517, 64518 - Division or modulo by zero.
* PHP Tests: Remove expected exception message from the test requirement, as several valid messages are exist.
* AS3 Demo: Fix build - add missed import.
* CMake: Fix warning COPY_ONLY - unknown argument.
* CMake: Fix compatibility with cmake 2.8.
Features:
* Emscripten: Add 'sign/verify' functionality to the example.
Improvements:
* Remove comments syntax from the LICENSE.
* Emscripten: Remove code duplicate.
Changes:
* Lib: Split package virgil::service::stream.
* Lib: Move functions 'read_certificate' and 'read_sign' from CLI to the library.
* Remove wrapper node.js build with node-gyp.
* CMake: Replace variable PLATFORM_EMBEDDED with variable CMAKE_CROSSCOMPILING.
* CMake: Add configurable variable INSTALL_DIR_NAME.
* CMake: Add configurable variable ENABLE_TESTING.
* CMake: Remove file 'VERSION' from the installation process.
* CMake: Remove redundant variable 'INSTALL_DIR_NAME'.
* CMake: Remove variables 'INSTALL_ARCH_DIR_NAME', 'INSTALL_X86_DIR_NAME', 'INSTALL_X64_DIR_NAME'.
* CMake: Add configurable variable INSTALL_EXT_HEADERS.
* CMake: Make 'virgil' library includes available within parent scope.
* CMake: Rename property 'LOW_LEVEL_API' to 'LIB_LOW_LEVEL_API'.
= Version 0.8.0 released 2015-04-16
Bugfix:
* Lib: Store algorithm parameters in ASN.1 structure when marshal cipher with elliptic-curve key.
* Programs: Add omitted parameter 'certificate id'.
Features:
* AS3: Add class VirgilBase64.
* Ruby. Add wrapper for the ruby.
* Python. Add wrapper for the python.
* Emscripten: Add emscripten(asm.js) wrapper.
Improvements:
* Lib: Encapsulate fields of the class VirgilCipherBase.
* Lib: Hide usage of classes: VirgilAsn1Reader and VirgilAsn1Writer.
* CMake: Remove redundant installation of library headers.
* CMake: Add optional flag LOW_LEVEL_API - default value is OFF.
* CMake: Remove unused variable - SIMULATOR.
Changes:
* AS3: Move classes 'VirgilCustomParams' and 'VirgilContentInfo' to the package 'com.virgilsecurity.crypto'.
* Lib: Add member type 'value_type' to the VirgilIdProvider.
* Lib: Move version configuration from header file to the implementation file.
* CMake: Change library installation policy, now target folder depends on the machine architecture.
= Version 0.7.0 released 2015-03-31
Bugfix:
* CMake: Fix CMAKE_OSX_ARCHITECTURES variable default definition.
Features:
* C#: Add mapping C++ VirgilByteArray to the C# byte[].
* C#: Add runtime selection of the library architecture: x86 or x86_64.
* AS3: Add wrapper for class VirgilHash.
Improvements:
* C#: Set assembly version to the library current version.
* AS3: Move utility headers to the appropriate place.
* SWIG: Simplify including type mappings for VirgilByteArray.
* SWIG: Move language specific typemaps to separate files.
Changes:
* All: Rename method VirgilChunkCipher::finalize() to
VirgilChunkCipher::finish() due to name confilcts on some platforms.
* SWIG C#: Make first letter of all functions and properties uppercase.
* CMake C#. Rename .NET assembly of the shared library from 'virgil.assembly' to 'Virgil.Net'
* CMake: Selection of install directory for C# now depends on variables:
CMAKE_SYSTEM_NAME, CMAKE_OSX_ARCHITECTURES, COMPILER_ARCH_32,
COMPILER_ARCH_64.
* SWIG: Ignore 'operator=' and 'operator=='.
= Version 0.6.0 released 2015-03-23
Bugfix:
* CMake: Fix build options for jsoncpp library.
* CMake: Define max java heap size for AS3 compilation process to prevent
build fail.
* AS3: Add try-catch section to the 'VirgilChunkCipher::startEncryption()'
method wrapper.
Improvements:
* CMake: Add version to the AS3 library file name.
* CMake: Display full AS3 library name (including version) when build.
* CMake: Prevent copy C++ headers to the AS3 installation folder.
* CMake: Make AS3 library build only if needed.
* CMake: Replace variable AS3_MODULE_FILE_NAME with synonym WRAPPER_SWC.
* AS3: Change gradle configuration file to work with gradle version 2.3
and gradlefx version 1.1.0.
* CMake: Use UPDATE command instead of PATCH command in the
ExternalProject_Add.
* Lib: Add SHA-384 algorithm.
* CMake: Add AS3 wrapper dependency on the library 'virgil'.
Changes:
* AS3 Demo: Change demo app to be conformed with library version 0.5.0.
* AS3 Demo: Embed content info to the encrypted file.
* PHP: Remove 'iconv' and 'mb_detect_encoding' dependencies from unit tests.
* All: Switch from 'polarssl' main branch to the 'mbed TLS' fork made by
Virgil Security.
* CMake: Refactor 'mbed TLS' patch. Now its configure files: 'config.h'
and 'check_config.h' only.
* Lib: PBE: use external functions.
* Lib: Change SHA-256 to SHA-384 as default signer hash algorithm.
* Lib: Rename VirgilByteArray utility functions to short versions.
* Lib: Function 'getContentInfo()' become available immediately after
function 'startEncryption()' call in the class VirgilChunkCipher.
* AS3: Build AS3 unit tests in the strict mode.
= Version 0.5.0 released 2015-03-12
Features:
* AS3: Implement Action Script 3 wrapper for virgil library version 0.4.0.
Improvements:
* AS3: Speed and size optimization by using flascc Link Time Optimizer (LTO).
* AS3: Make all tests configurable.
* AS3: Configure test VirgilVersionTest with CMAKE variables.
Changes:
* CMake: Apply platform specific compiler options only for native platforms
build.
* Lib: Changed marshalling / demarshalling process for tickets.
Now 'class_name' field is handled by the base class.
* Lib: Rename VirgilCipherBase::customParameters() to
VirgilCipherBase::customParams().
* Lib: Renaming VirgilVersion class methods.
* Lib: Remove macroses: VIRGIL_BYTE_ARRAY_FROM_C_STRING,
VIRGIL_BYTE_ARRAY_FROM_STD_STRING, VIRGIL_BYTE_ARRAY_TO_STD_STRING,
VIRGIL_BYTE_ARRAY_ZEROIZE. Use inline functions analogue instead.
* Lib: Remove 'jsoncpp' library dependency from the public API.