Transcryptfs: A Dynamically Loadable Kernelspace Filesystem Architecture

┬╖ Adarsh Jagannatha
рдИ-рдмреБрдХ
47
рдкреЗрдЬ

рдЗрд╕ рдИ-рдмреБрдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА

┬аTransCrypt is an encrypting filesystem, indigenously developed at IIT Kanpur. It has been under continuous development for the past 6 years, by various students of IIT Kanpur at Prabhu Goel Reasearch Centre for Computer and Internet Security. The codebase of Transcryptfs filesystem for Linux is spread across various sub systems of Linux kernel, viz. dm-layer, lsm, vfs, crypto, etc., making it difficult to keep Transcryptfs updated with changes in any of those subsystem in upstream kernelтАЩs mainline code. One of the main features of Transcryptfs for Linux file server is the use of Linux security module (LSM) for providing access control mechanism; Due to changes in kernel architecture, since late 2007, LSM has to be statically linked with kernel during its compile time, thereby imposing a restriction that Transcryptfs supported kernel should be statically compiled with the Transcryptfs-lsm module.

This additionally imposed restriction has led to a complicated procedure for setting up of Transcryptfs filesystem and also has shifted the responsibility of patching kernel with new updates from the distribution managers to individual system administrators. These factors have resulted in non-adoption of Transcryptfs for real world usecase.

In this thesis, we re-engineer and come up with an architecture that aims to make Transcryptfs an easily deployable and dynamically loadable kernel module, in addition to decoupling codebase from the kernel source into a single manageable module, thereby easing maintenance and further development of Transcryptfs filesystem. The contribution of this thesis is in designing the kernelspace architecture and related implementation of Transcryptfs as an out-of-the-tree kernel module.

рд▓реЗрдЦрдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ

Adarsh is a technology enthusiast, he wrote this thesis as part of his masters' thesis. He is a web developer, system admin and an entrepreneur. ┬а

рдкрдарди рдЬрд╛рдирдХрд╛рд░реА

рд╕реНрдорд╛рд░реНрдЯрдлрд╝реЛрди рдФрд░ рдЯреИрдмрд▓реЗрдЯ
Android рдФрд░ iPad/iPhone рдХреЗ рд▓рд┐рдП Google Play рдХрд┐рддрд╛рдмреЗрдВ рдРрдкреНрд▓рд┐рдХреЗрд╢рди рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░реЗрдВ. рдпрд╣ рдЖрдкрдХреЗ рдЦрд╛рддреЗ рдХреЗ рд╕рд╛рде рдЕрдкрдиреЗ рдЖрдк рд╕рд┐рдВрдХ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдЖрдкрдХреЛ рдХрд╣реАрдВ рднреА рдСрдирд▓рд╛рдЗрди рдпрд╛ рдСрдлрд╝рд▓рд╛рдЗрди рдкрдврд╝рдиреЗ рдХреА рд╕реБрд╡рд┐рдзрд╛ рджреЗрддрд╛ рд╣реИ.
рд▓реИрдкрдЯреЙрдк рдФрд░ рдХрдВрдкреНрдпреВрдЯрд░
рдЖрдк рдЕрдкрдиреЗ рдХрдВрдкреНрдпреВрдЯрд░ рдХреЗ рд╡реЗрдм рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ Google Play рдкрд░ рдЦрд░реАрджреА рдЧрдИ рдСрдбрд┐рдпреЛ рдХрд┐рддрд╛рдмреЗрдВ рд╕реБрди рд╕рдХрддреЗ рд╣реИрдВ.
eReaders рдФрд░ рдЕрдиреНрдп рдбрд┐рд╡рд╛рдЗрд╕
Kobo рдИ-рд░реАрдбрд░ рдЬреИрд╕реА рдИ-рдЗрдВрдХ рдбрд┐рд╡рд╛рдЗрд╕реЛрдВ рдкрд░ рдХреБрдЫ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдлрд╝рд╛рдЗрд▓ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдХреЗ рдЙрд╕реЗ рдЕрдкрдиреЗ рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рдЯреНрд░рд╛рдВрд╕рдлрд╝рд░ рдХрд░рдирд╛ рд╣реЛрдЧрд╛. рдИ-рд░реАрдбрд░ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдИ-рд░реАрдбрд░ рдкрд░ рдЯреНрд░рд╛рдВрд╕рдлрд╝рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╕рд╣рд╛рдпрддрд╛ рдХреЗрдВрджреНрд░ рдХреЗ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд░реЗрдВ.