If encrypted node names exceed a configurable threshold, cryptofs shortens the node:
create folder named as base64url(sha1(actualFileName)).c9s
create file contents.c9r inside folder with actual file content
create file name.c9r inside folder with actual file name
In the scenario, that an existing shortened file is replaced (aka moving a different file to the shortend files path), Cryptofs throws an exception:
## Filesystemprovider is jimfs
Caused by: java.nio.file.FileAlreadyExistsException: /vault/d/FW/62AD46Y3CLSPBJCAZTO2EQD5TDALWH/-EIMycfzld_5fJFlbshZIvG5XR8=.c9s
at com.google.common.jimfs.FileSystemView.createFile(FileSystemView.java:260)
at com.google.common.jimfs.FileSystemView.createDirectory(FileSystemView.java:225)
at com.google.common.jimfs.JimfsFileSystemProvider.createDirectory(JimfsFileSystemProvider.java:217)
at java.base/java.nio.file.Files.createDirectory(Files.java:700)
at org.cryptomator.cryptofs@2.7.0-SNAPSHOT/org.cryptomator.cryptofs.CryptoFileSystemImpl.moveFile(CryptoFileSystemImpl.java:602)
at org.cryptomator.cryptofs@2.7.0-SNAPSHOT/org.cryptomator.cryptofs.CryptoFileSystemImpl.move(CryptoFileSystemImpl.java:574)
at org.cryptomator.cryptofs@2.7.0-SNAPSHOT/org.cryptomator.cryptofs.MoveOperation.move(MoveOperation.java:37)
at org.cryptomator.cryptofs@2.7.0-SNAPSHOT/org.cryptomator.cryptofs.CryptoFileSystemProvider.move(CryptoFileSystemProvider.java:255)
at java.base/java.nio.file.Files.move(Files.java:1432)
If encrypted node names exceed a configurable threshold, cryptofs shortens the node:
base64url(sha1(actualFileName)).c9s
contents.c9r
inside folder with actual file contentname.c9r
inside folder with actual file nameIn the scenario, that an existing shortened file is replaced (aka moving a different file to the shortend files path), Cryptofs throws an exception: