time-decode


Nametime-decode JSON
Version 7.0.2 PyPI version JSON
download
home_page
SummaryPython 3 timestamp decode/encode tool
upload_time2024-01-15 03:09:59
maintainer
docs_urlNone
author
requires_python>=3.6
licenseMIT License Copyright (c) 2023 Corey Forman Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
keywords digital forensics dfir timestamp decode encode
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            ![PyPI - Version](https://img.shields.io/pypi/v/time_decode?logo=python&label=Latest%20pypi%20Release&labelColor=white)

# Time Decode
A Python 3 timestamp and date decoder/encoder. 

I noticed a lack of timestamp conversion utilities in a number of different linux systems. Since I happen to use linux in my day-to-day work I thought this would help.

This was developed with the Digital Forensics field in mind, so all of the testing has been done with the up-to-date SIFT Kit from SANS.
If you have any questions, suggestions, helpful thoughts of any kind, please feel free to drop me a line.

# Requirements
For python3, dateutil does not come pre-installed as a module. It will need to be installed manually:

`sudo apt-get install python3-dateutil` or `python3 -m pip install python-dateutil`

# Install
`python3 -m pip install time-decode` or `python3 -m pip install git+https://github.com/digitalsleuth/time_decode`

This python script provides the following conversions from existing timestamps:

- 128-bit SYSTEMTIME
- 32-bit MS-DOS time, result is Local
- Active Directory value
- Apple Biome 64-bit decimal format
- Apple Biome hex format
- Bitwise decimal 10-digit
- BPlist (as NSDate)
- Cocoa Core (as NSDate)
- DHCP6 DUID
- Discord URL
- exFAT
- FAT Date + Time (wFat)
- FILETIME
- GMail Boundary
- GMail Message ID
- Google Chrome value
- Google EI URL (thanks to http://cheeky4n6monkey.blogspot.com/2014/10/google-eid.html)
- GPS
- GSM
- HFS(+) BE, HFS Local, HFS+ UTC
- HFS(+) LE, HFS Local, HFS+ UTC
- Hotmail
- iOS 11+ (as NSDate)
- KSUID 27-character
- KSUID 9-digit
- Mac Absolute Time (as NSDate)
- Mac OS/HFS+ Decimal Time
- Mastodon URL
- Metasploit Payload UUID
- Motorola's 6-byte
- Mozilla's PRTime
- MS Excel 1904 Date
- .NET DateTime
- Nokia 4-byte
- Nokia 4-byte LE
- Nokia S40 7-byte
- Nokia S40 7-byte LE
- OLE Automation Date
- S32 Encoded (Bluesky Social timestamp)
- Samsung/LG 4-byte
- Sonyflake URL (Sony version of Twitter Snowflake)
- Symantec's 6-byte AV
- TikTok URL
- Twitter URL
- Unix Hex 32-bit BE
- Unix Hex 32-bit LE
- Unix Milliseconds
- Unix Seconds
- UUID
- VMWare Snapshot (.vmsd)
- Windows 64-bit Hex BE
- Windows 64-bit Hex LE
- Windows Cookie Date (Low,High)
- Windows OLE 64-bit BE (SRUM as well)
- Windows OLE 64-bit LE

Note that HFS times are in Local Time, where HFS+ times are in UTC. MS-DOS 32 bit Hex values and MS-DOS FAT Date+Time are also in Local Time of the source generating the timestamp. All other times, unless expressly mentioned, are in UTC.

I have added a feature to 'guess' in what format the timestamp is that you've provided. This will run the timestamp you provide against all methods, and provide an output if human-readable.
There is also the ability to convert a date-time to all of the aforementioned timestamps. Simply use the following command:

`time-decode --timestamp "2023-04-27 16:14:15.678"`
or for timezones use:
`time-decode --timestamp "2023-04-27 16:14:15 -5"`

The date/time you enter should be in the "YYYY-mm-dd HH:MM:SS.sss" format with the double-quote included, but does not require milli/micro/nano seconds to work. (Double-quote required for Windows Python)
If anyone has any other timestamps they think should be added to this tool, please let me know.

References/Sources for all material can also be found in the docstrings in the python script.

            

Raw data

            {
    "_id": null,
    "home_page": "",
    "name": "time-decode",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": "\"Corey Forman (digitalsleuth)\" <github@digitalsleuth.ca>",
    "keywords": "digital forensics,dfir,timestamp,decode,encode",
    "author": "",
    "author_email": "\"Corey Forman (digitalsleuth)\" <github@digitalsleuth.ca>",
    "download_url": "https://files.pythonhosted.org/packages/14/f8/2f515fb9d6f45c69b09db21817fb8e3ef857a15f7d31d4e75c8794287d1a/time-decode-7.0.2.tar.gz",
    "platform": null,
    "description": "![PyPI - Version](https://img.shields.io/pypi/v/time_decode?logo=python&label=Latest%20pypi%20Release&labelColor=white)\n\n# Time Decode\nA Python 3 timestamp and date decoder/encoder. \n\nI noticed a lack of timestamp conversion utilities in a number of different linux systems. Since I happen to use linux in my day-to-day work I thought this would help.\n\nThis was developed with the Digital Forensics field in mind, so all of the testing has been done with the up-to-date SIFT Kit from SANS.\nIf you have any questions, suggestions, helpful thoughts of any kind, please feel free to drop me a line.\n\n# Requirements\nFor python3, dateutil does not come pre-installed as a module. It will need to be installed manually:\n\n`sudo apt-get install python3-dateutil` or `python3 -m pip install python-dateutil`\n\n# Install\n`python3 -m pip install time-decode` or `python3 -m pip install git+https://github.com/digitalsleuth/time_decode`\n\nThis python script provides the following conversions from existing timestamps:\n\n- 128-bit SYSTEMTIME\n- 32-bit MS-DOS time, result is Local\n- Active Directory value\n- Apple Biome 64-bit decimal format\n- Apple Biome hex format\n- Bitwise decimal 10-digit\n- BPlist (as NSDate)\n- Cocoa Core (as NSDate)\n- DHCP6 DUID\n- Discord URL\n- exFAT\n- FAT Date + Time (wFat)\n- FILETIME\n- GMail Boundary\n- GMail Message ID\n- Google Chrome value\n- Google EI URL (thanks to http://cheeky4n6monkey.blogspot.com/2014/10/google-eid.html)\n- GPS\n- GSM\n- HFS(+) BE, HFS Local, HFS+ UTC\n- HFS(+) LE, HFS Local, HFS+ UTC\n- Hotmail\n- iOS 11+ (as NSDate)\n- KSUID 27-character\n- KSUID 9-digit\n- Mac Absolute Time (as NSDate)\n- Mac OS/HFS+ Decimal Time\n- Mastodon URL\n- Metasploit Payload UUID\n- Motorola's 6-byte\n- Mozilla's PRTime\n- MS Excel 1904 Date\n- .NET DateTime\n- Nokia 4-byte\n- Nokia 4-byte LE\n- Nokia S40 7-byte\n- Nokia S40 7-byte LE\n- OLE Automation Date\n- S32 Encoded (Bluesky Social timestamp)\n- Samsung/LG 4-byte\n- Sonyflake URL (Sony version of Twitter Snowflake)\n- Symantec's 6-byte AV\n- TikTok URL\n- Twitter URL\n- Unix Hex 32-bit BE\n- Unix Hex 32-bit LE\n- Unix Milliseconds\n- Unix Seconds\n- UUID\n- VMWare Snapshot (.vmsd)\n- Windows 64-bit Hex BE\n- Windows 64-bit Hex LE\n- Windows Cookie Date (Low,High)\n- Windows OLE 64-bit BE (SRUM as well)\n- Windows OLE 64-bit LE\n\nNote that HFS times are in Local Time, where HFS+ times are in UTC. MS-DOS 32 bit Hex values and MS-DOS FAT Date+Time are also in Local Time of the source generating the timestamp. All other times, unless expressly mentioned, are in UTC.\n\nI have added a feature to 'guess' in what format the timestamp is that you've provided. This will run the timestamp you provide against all methods, and provide an output if human-readable.\nThere is also the ability to convert a date-time to all of the aforementioned timestamps. Simply use the following command:\n\n`time-decode --timestamp \"2023-04-27 16:14:15.678\"`\nor for timezones use:\n`time-decode --timestamp \"2023-04-27 16:14:15 -5\"`\n\nThe date/time you enter should be in the \"YYYY-mm-dd HH:MM:SS.sss\" format with the double-quote included, but does not require milli/micro/nano seconds to work. (Double-quote required for Windows Python)\nIf anyone has any other timestamps they think should be added to this tool, please let me know.\n\nReferences/Sources for all material can also be found in the docstrings in the python script.\n",
    "bugtrack_url": null,
    "license": "MIT License  Copyright (c) 2023 Corey Forman  Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:  The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.  THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ",
    "summary": "Python 3 timestamp decode/encode tool",
    "version": "7.0.2",
    "project_urls": {
        "Homepage": "https://github.com/digitalsleuth/time_decode",
        "References": "https://github.com/digitalsleuth/time_decode/blob/master/REFERENCES.md"
    },
    "split_keywords": [
        "digital forensics",
        "dfir",
        "timestamp",
        "decode",
        "encode"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ccc644848df6e67621746b4133781e6e3d4e016ec3f777e61abc1677400174d2",
                "md5": "7cd62d8bcdc61d929c5c5e0174f096ee",
                "sha256": "d2e470b10135bfc6caf87291b27e9f1f57ff290695e50a080eb8c3dfd04580a7"
            },
            "downloads": -1,
            "filename": "time_decode-7.0.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "7cd62d8bcdc61d929c5c5e0174f096ee",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.6",
            "size": 36304,
            "upload_time": "2024-01-15T03:09:56",
            "upload_time_iso_8601": "2024-01-15T03:09:56.909200Z",
            "url": "https://files.pythonhosted.org/packages/cc/c6/44848df6e67621746b4133781e6e3d4e016ec3f777e61abc1677400174d2/time_decode-7.0.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "14f82f515fb9d6f45c69b09db21817fb8e3ef857a15f7d31d4e75c8794287d1a",
                "md5": "8de94a3f9ee15879ed296d3e99dfcd28",
                "sha256": "d7adcfb8c28da9b4694e605538073f21c84b3ebfbd895ec191ee5481ff0e8fab"
            },
            "downloads": -1,
            "filename": "time-decode-7.0.2.tar.gz",
            "has_sig": false,
            "md5_digest": "8de94a3f9ee15879ed296d3e99dfcd28",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 37223,
            "upload_time": "2024-01-15T03:09:59",
            "upload_time_iso_8601": "2024-01-15T03:09:59.179056Z",
            "url": "https://files.pythonhosted.org/packages/14/f8/2f515fb9d6f45c69b09db21817fb8e3ef857a15f7d31d4e75c8794287d1a/time-decode-7.0.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-01-15 03:09:59",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "digitalsleuth",
    "github_project": "time_decode",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "time-decode"
}
        
Elapsed time: 0.17597s