Update: There is a more secure version available. Details
<?php
$plaintext = 'My secret message 1234';
// you need this in your cargo.toml | |
// reqwest = { version = "0.11.3", features = ["stream"] } | |
// futures-util = "0.3.14" | |
// indicatif = "0.15.0" | |
use std::cmp::min; | |
use std::fs::File; | |
use std::io::Write; | |
use reqwest::Client; | |
use indicatif::{ProgressBar, ProgressStyle}; |
readBinaryFile(event.payload[0]).then(async (data) => { | |
pdfjsLib.getDocument(data.buffer).promise.then((pdf) => { | |
pdf.getPage(1).then((page) => { | |
page.getOperatorList().then((ops) => { | |
const fns = ops.fnArray; | |
const args = ops.argsArray; | |
const validObjectTypes = [ | |
pdfjsLib.OPS.paintImageXObject, // 85 | |
pdfjsLib.OPS.paintImageXObjectRepeat, // 88, |
function addAlphaChannelToUnit8ClampedArray(unit8Array: Uint8ClampedArray, imageWidth: number, imageHeight: number) { | |
const newImageData = new Uint8ClampedArray(imageWidth * imageHeight * 4); | |
for (let j = 0, k = 0, jj = imageWidth * imageHeight * 4; j < jj; ) { | |
newImageData[j++] = unit8Array[k++]; | |
newImageData[j++] = unit8Array[k++]; | |
newImageData[j++] = unit8Array[k++]; | |
newImageData[j++] = 255; | |
} |
{ | |
"version": "v0.0.2", | |
"notes": "Docma đã có phiên bản mới.", | |
"pub_date": "2023-10-30T19:25:57Z", | |
"platforms": { | |
"darwin-aarch64": { | |
"signature": "dW50cnVzdGVkIGNvbW1lbnQ6IHNpZ25hdHVyZSBmcm9tIHRhdXJpIHNlY3JldCBrZXkKUlVUVlNsK3pHNDdCM1hoR2VZZzZGQ3ZYWEh0VnNWd3dBUkZKSmJhN1VETzYvZWp0NVhsR05EOGZkYVdXWTBoSkMzanBXNG95b05iWTlXUThaOVdHTUpuV1QzRkpXb0xhT2d3PQp0cnVzdGVkIGNvbW1lbnQ6IHRpbWVzdGFtcDoxNjk4NjAyMDU4CWZpbGU6ZG9jbWEuYXBwLnRhci5negpvNkc1RmFtTzVubVNsblRmNU55YzBaUFZSUlpFaHZCdE1vK2dkTXpYL3ZtRGdYWEhFejlXQkp0WUh1cjdqNEVwUkNSd0R1VkxhWDFkRGUyOTgzSTdEUT09Cg==", | |
"url": "https://github.com/ledunguit/temp-repo/raw/main/docma.app.tar.gz" | |
} | |
} |
import { defineConfig } from 'vite'; | |
import laravel from 'laravel-vite-plugin'; | |
import vue from '@vitejs/plugin-vue'; | |
import * as fs from 'fs'; | |
export default defineConfig({ | |
server: { | |
https: { | |
cert: fs.readFileSync('./certs/example.com.crt'), | |
key: fs.readFileSync('./certs/example.com.key') |
#! /usr/bin/python2 | |
## generated from systemctl3.py - do not change | |
from __future__ import print_function | |
__copyright__ = "(C) 2016-2020 Guido U. Draheim, licensed under the EUPL" | |
__version__ = "1.5.4505" | |
import logging | |
logg = logging.getLogger("systemctl") |
using Org.BouncyCastle.Crypto; | |
using Org.BouncyCastle.Crypto.Parameters; | |
using Org.BouncyCastle.OpenSsl; | |
using Org.BouncyCastle.Security; | |
using System; | |
using System.IO; | |
using System.Security.Cryptography; | |
namespace MyProject.Data.Encryption | |
{ |
@echo off | |
fltmc >nul 2>&1 || ( | |
echo This batch script requires administrator privileges. Right-click on | |
echo the script and select "Run as administrator". | |
goto :die | |
) | |
rem Change this path if you are using Community or Professional editions | |
set "VS_INSTALL_DIR=%ProgramFiles(x86)%\Microsoft Visual Studio\2019\Enterprise" |
Update: There is a more secure version available. Details
<?php
$plaintext = 'My secret message 1234';
<?php | |
// DEFINE our cipher | |
define('AES_256_CBC', 'aes-256-cbc'); | |
// Generate a 256-bit encryption key | |
// This should be stored somewhere instead of recreating it each time | |
$encryption_key = openssl_random_pseudo_bytes(32); | |
// Generate an initialization vector | |
// This *MUST* be available for decryption as well |