Skip to content

Commit

Permalink
Add hash script
Browse files Browse the repository at this point in the history
  • Loading branch information
majakomel committed Aug 6, 2024
1 parent 41f410b commit e672f47
Showing 1 changed file with 34 additions and 0 deletions.
34 changes: 34 additions & 0 deletions scripts/hashFile.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
// copied from https://stackoverflow.com/a/60208623
const path = require('path')
const fs = require('fs')
const crypto = require('crypto')

const YOUR_FILE_PATH = './dist/OONI Probe Setup 3.9.7-rc.1.exe'

function hashFile(file, algorithm = 'sha512', encoding = 'base64', options) {
return new Promise((resolve, reject) => {
const hash = crypto.createHash(algorithm)
hash.on('error', reject).setEncoding(encoding)
fs.createReadStream(
file,
Object.assign({}, options, {
highWaterMark: 1024 * 1024,
/* better to use more memory but hash faster */
})
)
.on('error', reject)
.on('end', () => {
hash.end()
console.log('hash done')
console.log(hash.read())
resolve(hash.read())
})
.pipe(hash, {
end: false,
})
})
}

const installerPath = path.resolve(__dirname, YOUR_FILE_PATH)

hashFile(installerPath)

0 comments on commit e672f47

Please sign in to comment.