ChangeLog 7.2 KB
Newer Older
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
TODO
* libfvde
  - optimize XML plist parser to directly generate keys
* fvdeinfo
  - print logical volume identifier
* format support
  - 2x 0x001a block with same serial, where second one contains size of 2x extents
  - and first 1x extent, another image only the size of 1x extent.
* volume offset detection
  - fallback check if volume data is before encrypted metadata?
* pyfvde
  - pyfvde_volume_get_size replace by pyfvde_volume_get_logical_volume_size ?
  - add functionality to set encrypted context plist
* complete libfvde_xml_plist
  - rename XML plist key to element
  - improve error reporting regardin not being able to read the plist
    versus not being able to read specific elements.
* read 0x0012 and 0x001d/0x0505 pairs and compare sequence numbers
* add support for block chains 0x0019, 0x0024
* add support from compressed XML plist 0x0019
* print metadata block offset for debugging
* check for partial encrypted volumes
* debug print block type description for 0x0405 metadata

....
libfvde_encrypted_metadata_read_type_0x0305: number of entries : 1
libfvde_encrypted_metadata_read_type_0x0305: unknown1:
00000000: 00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00   ........ ........
00000010: 00 00 00 00                                        ....

libfvde_encrypted_metadata_read_type_0x0305: logical volume number of blocks : 29323264
libfvde_encrypted_metadata_read_type_0x0305: unknown2 : 4194304
libfvde_encrypted_metadata_read_type_0x0305: unknown3:
00000000: 00 00 00 00 00 00 00 00                            ........ 

libfvde_encrypted_metadata_read_type_0x0305: logical volume block number : 65536
....

* Make sure to detect PassphraseWrappedKEKStruct in different locations within
  the XML
* add password keep
* remove deprecated functions
  - libfvde_volume_read_random
* double check 0x0505 findings with debug logs
* git version
  - make sure dependent local libs are in git
  - fix synclibs.sh for libfvalue Makefile.am
* merge reading metadata and encrypted metadata ?

* API add volume identifier functions

* add handling of FVDE volumes with corrupt metadata, e.g. file header

* read and compare second physical volume header

* move initialize of volume specific runtime data to open and clean up to close
* store passwords as hashes?
* libxml
  integrate into packaging system
  print status info in configure
* split off AES KEK functions
* fvdemount add osxmount support
* code clean up
  - check for leading spaces
  - check for () without spaces
  - check for = alignment
  - check for if ( instead of if(
  - check error codes
* check README files
  - make sure pkg-config is mentioned as a dependency
* add debug output
  - encryption method
  - checksum algorithm

Future considerations:
* how does tie into CS volume management
  - rename library to libvcs ?
  - rename FileVault to CoreStorage ?

80 81 82
20161103
* worked on tests

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
20160729
* worked on format support

20160728
* worked on format support

20160727
* worked on format support

20160720
* worked on format support

20160719
* worked on format support

20160718
* worked on Python bindings

20151018
* worked on format support

20151017
* worked on Python bindings

20151013
* worked on format support

20151013
* worked on XML plist

20151012
* worked on XML plist

20151011
* worked on format support

20150926
* added ps1 scripts

20150720
* worked on signature check

20150222
* Code clean up
* Worked on documenation
* Changes for handling 0x001a metadata with different plist key sequence

20150106
* 2015 update

20141226
* changes for updated dependencies

20141130
* code clean up

20141120
* code clean up

20141018
* removed README.macosx

20141017
* changes for deployment

20140907
* updated dependencies
* updated msvscpp files, not operational yet

20140531
* updated dependencies

20140112
* 2014 update
* updated dependencies
* exposed some encryption context plist functions in API

20130909
* updated dependencies
* worked on libcthreads build support

20131205
* updated dependencies

20130716
* updated dependencies
* replaced AES-XTS code by libcaes XTS implementation
* worked on git support
* code clean up

20130703
* code clean up

20130412
* updated README files
* updated dependencies
* added tests directory

20130331
* updated dependencies
* code clean up

20130305
* added safe-guards for XML plist data
* added check for block serial number
* added support for 0x0505 block that is defined before 0x001a block

20130228
* worked on improving logical volume offset detection

20130227
* worked on improving logical volume size detection
* code clean up

20130226
* worked on improving logical volume size detection
* code clean up

20130221
* fix for value overwrite of logical volume size by successive block

20130220
* small change to include/types.h

20130113
* 2013 update
* updated dependencies
* updated msvscpp files

20121217
* bug fixes

20121212
* updates to debug output

20121114
* updated libfvde.3 man page
* added volume get offset function
* worked on set keys
* code clean up
* worked on msvscpp files

20121113
* updated man pages
* added change to support number of iterations in password
  wrapped kek

20121112
* updated dependencies
* replaced libfvde_parse_uuid_string by libfguid function
* fixes in pc and spec file

20120916
* worked on fvdemount

20120915
* applied updates
* worked on fvdemount
  - added -X option
  - replaced EBADFD by EIO

20120813
* worked on encrypted removable media
* worked on man pages
* fixed issue for debug output for libfvde_io_handle_read_unencrypted_volume_header
* worked on function to pass VMK directly

20120808
* applied updates

20120724
* code clean up

20120723
* code clean up
* removed key and volume master key files they served no purpose in contrast
  to original libbde code

20120722
* code clean up
* fixed potential memory and data leak in set password functions

20120721
* fix for acinclude.m4 and libxml2.m4
* added libcsplit
* applied updates
* switched library order in tools
* updated .pc and .spec file
* preparations for msvscpp build

20120521
* configure.ac fixes for dpkg files

20120520
* code clean up

20120519
* removed libfvalue
* code clean up
  - renamed plist
  - change naming of volume offset and size
* add support for secondary encrypted metadata block
* added XML parsing to encrypted metadata block

20120518
* code clean up of fvdemount
* code clean up
  - removed more unused code
  - fix for relative volume offset

20120516
* bug fixes for plist
* code clean up
* added more debug output

20120514
* fixes for wide character build

20120510
* updated dependencies
* code clean up

20120405
* fix for libxml2 detection on MacOS-X

20120208
* code clean up

20120207
* code clean up
* fixed wrong context for decryption

20120206
* code clean up

20120202
* code clean up

20120124
* added debug output
* rewrite of dealing with metadata
* removed AES CCM code
* removed BDE metadata definitions

20120117
* added debug output

20120116
* 2012 update
* updated pc file
* updated dependencies
* removed libbde
* renamed to libfvde
* added libfcache
* updates for array type changes
* updates for libcaes changes
* updates for libbfio changes
* updated for libfcache/libfdata changes
* fixed a several potential memory leaks
* fixed a several integer overflow/truncation issues

20111007
* initial version based on libbde