# wdpass
WD Passport Ultra Complete Utilities for Linux.
Thanks to:
- [Dan Lenski](https://github.com/dlenski) for [py_sg](https://pypi.org/project/py_sg/) (Python2)
- [0-duke](https://github.com/0-duke) and [derekhe](https://github.com/derekhe) for [wdpassport-utils](https://github.com/derekhe/wdpassport-utils) (Python2)
- [tvladyslav](https://github.com/tvladyslav/) for Python3 migration of [py_sg](https://github.com/tvladyslav/py3_sg) and [wdpassport-utils](https://github.com/tvladyslav/wdpassport-utils)
## Intro
This script let you unlock, change password and erase Western Digital Passport devices on Linux platform.
## Requirements
- Install `lsscsi` package or any package that provides `lsscsi` command in your linux distro.
## Install
### Install the latest version from PyPi
```shell
sudo python3 -m pip install wdpass
```
### Install the latest version manually
- Provide `<Python.h>` header file by installing Python Developer Package. (usually `python3-dev` or `python3-devel`)
- Install the latest py3_sg from [py3_sg](https://github.com/tvladyslav/py3_sg)
- And finally install `wdpass` from this repository.
For example on Ubuntu:
```shell
sudo apt install lsscsi python3-dev
sudo python3 -m pip install https://github.com/tvladyslav/py3_sg/archive/master.zip
sudo python3 -m pip install https://github.com/7aman/wdpass/archive/master.zip
```
## Usage
Run `wdpass` as root.
There are few options:
```shell
-h, --help show this help message and exit
```
Lists all possible arguments.
```shell
-s, --status Check device status and encryption type
```
Get device encryption status and cipher suites used.
```shell
-u, --unlock Unlock
```
You will be asked to enter the unlock password. If everything is fine device will be unlocked.
```shell
-us, --unlock_with_saved_passwd Unlock with the password saved
```
Unlock using the saved password. If everything is fine device will be unlocked.
```shell
-sp, --save_passwd Save password
```
When unlock password, it will save user password to passwd.bin, so you can use "-us" for next time to auto unlock.
```shell
-m, --mount Enable mount point for an unlocked device
```
After unlock, your operating system still thinks that your device is a strange thing attached to his usb port and he don't know how to manage. You need this option to force the O.S. to re-scan the device and handle it as a normal external usb hard drive.
```shell
-c, --change_passwd Change (or disable) password
```
This option let you to encrypt your device, remove password protection and change your current password.
If device is "without lock" and you want it to be password protect leave the "OLD password" field empty and choose insert the new password.
If the device is password protected and you want to be as a normal unencrypted device, insert the old password and leave the "NEW password" field empty.
If you only want to change password do it as usual.
```shell
-e, --erase Secure erase device
```
"Erase" the device. This will remove the internal key associated to you password and all your data will be unaccessible. You will also lose your partition table and you will need to create a new one (you can use fdisk and mkfs).
```shell
-d DEVICE, --device DEVICE Force device path (ex. /dev/sdb). Usually you don't need this option.
```
The script will try to auto detect the current device path of your WD Passport device.
If something is wrong or you want to manually specify the device path yourself you can use this option.
## Disclaimer
I'm in no way sponsored by or connected with Western Digital.
Use any of the information contained in this repository at your own risk. I accept no
responsibility.
Raw data
{
"_id": null,
"home_page": "http://github.com/7aman/wdpass",
"name": "wdpass",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.6",
"maintainer_email": "",
"keywords": "HDD WD MyPassport Unlocker WesternDigital",
"author": "Zaman",
"author_email": "7amaaan@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/7e/b9/875b4270317bb3cea26acdb07f6b33c85417b814852bcced96e6053e8c77/wdpass-0.1.0.tar.gz",
"platform": null,
"description": "# wdpass\n\nWD Passport Ultra Complete Utilities for Linux.\n\nThanks to:\n\n- [Dan Lenski](https://github.com/dlenski) for [py_sg](https://pypi.org/project/py_sg/) (Python2)\n- [0-duke](https://github.com/0-duke) and [derekhe](https://github.com/derekhe) for [wdpassport-utils](https://github.com/derekhe/wdpassport-utils) (Python2)\n- [tvladyslav](https://github.com/tvladyslav/) for Python3 migration of [py_sg](https://github.com/tvladyslav/py3_sg) and [wdpassport-utils](https://github.com/tvladyslav/wdpassport-utils)\n\n## Intro\n\nThis script let you unlock, change password and erase Western Digital Passport devices on Linux platform.\n\n## Requirements\n\n- Install `lsscsi` package or any package that provides `lsscsi` command in your linux distro.\n\n## Install\n\n### Install the latest version from PyPi\n\n```shell\nsudo python3 -m pip install wdpass\n```\n\n### Install the latest version manually\n\n- Provide `<Python.h>` header file by installing Python Developer Package. (usually `python3-dev` or `python3-devel`)\n- Install the latest py3_sg from [py3_sg](https://github.com/tvladyslav/py3_sg)\n- And finally install `wdpass` from this repository.\n\nFor example on Ubuntu:\n\n```shell\nsudo apt install lsscsi python3-dev\nsudo python3 -m pip install https://github.com/tvladyslav/py3_sg/archive/master.zip\nsudo python3 -m pip install https://github.com/7aman/wdpass/archive/master.zip\n```\n\n## Usage\n\nRun `wdpass` as root.\n\nThere are few options:\n\n```shell\n-h, --help show this help message and exit\n```\n\nLists all possible arguments.\n\n```shell\n-s, --status Check device status and encryption type\n```\n\nGet device encryption status and cipher suites used.\n\n```shell\n-u, --unlock Unlock\n```\n\nYou will be asked to enter the unlock password. If everything is fine device will be unlocked.\n\n```shell\n-us, --unlock_with_saved_passwd Unlock with the password saved\n```\n\nUnlock using the saved password. If everything is fine device will be unlocked.\n\n```shell\n-sp, --save_passwd Save password\n```\n\nWhen unlock password, it will save user password to passwd.bin, so you can use \"-us\" for next time to auto unlock.\n\n```shell\n-m, --mount Enable mount point for an unlocked device\n```\n\nAfter unlock, your operating system still thinks that your device is a strange thing attached to his usb port and he don't know how to manage. You need this option to force the O.S. to re-scan the device and handle it as a normal external usb hard drive.\n\n```shell\n-c, --change_passwd Change (or disable) password\n```\n\nThis option let you to encrypt your device, remove password protection and change your current password.\nIf device is \"without lock\" and you want it to be password protect leave the \"OLD password\" field empty and choose insert the new password.\nIf the device is password protected and you want to be as a normal unencrypted device, insert the old password and leave the \"NEW password\" field empty.\nIf you only want to change password do it as usual.\n\n```shell\n-e, --erase Secure erase device\n```\n\n\"Erase\" the device. This will remove the internal key associated to you password and all your data will be unaccessible. You will also lose your partition table and you will need to create a new one (you can use fdisk and mkfs).\n\n```shell\n-d DEVICE, --device DEVICE Force device path (ex. /dev/sdb). Usually you don't need this option.\n```\n\nThe script will try to auto detect the current device path of your WD Passport device.\nIf something is wrong or you want to manually specify the device path yourself you can use this option.\n\n## Disclaimer\n\nI'm in no way sponsored by or connected with Western Digital.\nUse any of the information contained in this repository at your own risk. I accept no\nresponsibility.\n\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Western Digital My Passport Utility",
"version": "0.1.0",
"project_urls": {
"Homepage": "http://github.com/7aman/wdpass",
"source": "http://github.com/7aman/wdpass"
},
"split_keywords": [
"hdd",
"wd",
"mypassport",
"unlocker",
"westerndigital"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "3a946cd56c0be4e8ec6d3aef5b8518ad04b26de22ba2fc5a841601edabbc5a8c",
"md5": "a17cb54d67edd0d2ef4952fa76700f85",
"sha256": "7ec74c97707885d56dc17a954b3acaf835e04d5238f18f5aacedb0feb41ae437"
},
"downloads": -1,
"filename": "wdpass-0.1.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "a17cb54d67edd0d2ef4952fa76700f85",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6",
"size": 8691,
"upload_time": "2023-06-02T04:29:26",
"upload_time_iso_8601": "2023-06-02T04:29:26.562400Z",
"url": "https://files.pythonhosted.org/packages/3a/94/6cd56c0be4e8ec6d3aef5b8518ad04b26de22ba2fc5a841601edabbc5a8c/wdpass-0.1.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "7eb9875b4270317bb3cea26acdb07f6b33c85417b814852bcced96e6053e8c77",
"md5": "24ea86505c67a0feabe6cdb2effb6246",
"sha256": "b37e815d44b8f65370c4b0ba98d0abb80e51976c9cb1707208e717dcf2e94bf8"
},
"downloads": -1,
"filename": "wdpass-0.1.0.tar.gz",
"has_sig": false,
"md5_digest": "24ea86505c67a0feabe6cdb2effb6246",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6",
"size": 9773,
"upload_time": "2023-06-02T04:29:31",
"upload_time_iso_8601": "2023-06-02T04:29:31.379667Z",
"url": "https://files.pythonhosted.org/packages/7e/b9/875b4270317bb3cea26acdb07f6b33c85417b814852bcced96e6053e8c77/wdpass-0.1.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-06-02 04:29:31",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "7aman",
"github_project": "wdpass",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "wdpass"
}