base64

JavaMail

痴心易碎 提交于 2020-01-23 18:01:08
一、邮件协议 1 收发邮件   发邮件大家都会吧!发邮件是从客户端把邮件发送到邮件服务器,收邮件是把邮件服务器的邮件下载到客户端。   我们在163、126、QQ、sohu、sina等网站注册的Email账户,其实就是在邮件服务器中注册的。这些网站都有自己的邮件服务器。 2 邮件协议概述 与HTTP协议相同,收发邮件也是需要有传输协议的。 SMTP:(Simple Mail Transfer Protocol,简单邮件传输协议)发邮件协议; POP3:(Post Office Protocol Version 3,邮局协议第3版)收邮件协议 ; IMAP:(Internet Message Access Protocol,因特网消息访问协议)收发邮件协议。 3 理解邮件收发过程   其实你可以把邮件服务器理解为邮局!如果你需要给朋友寄一封信,那么你需要把信放到邮筒中,这样你的信会“自动”到达邮局,邮局会把信邮到另一个省市的邮局中。然后这封信会被送到收信人的邮箱中。最终收信人需要自己经常查看邮箱是否有新的信件。   其实每个邮件服务器都由SMTP服务器和POP3服务器构成,其中SMTP服务器负责发邮件的请求,而POP3负责收邮件的请求。   当然,有时我们也会使用163的账号,向126的账号发送邮件。这时邮件是发送到126的邮件服务器,而对于163的邮件服务器是不会存储这封邮件的。

前端本地文件操作与上传

本秂侑毒 提交于 2020-01-23 11:47:07
前端无法像原生APP一样直接操作本地文件,否则的话打开个网页就能把用户电脑上的文件偷光了,所以需要通过用户触发,用户可通过以下三种方式操作触发: 通过input type="file" 选择本地文件 通过拖拽的方式把文件拖过来 在编辑框里面复制粘贴 第一种是最常用的手段,通常还会自定义一个按钮,然后盖在它上面,因为type="file"的input不好改变样式。如下代码写一个选择控件,并放在form里面: <form> <input type="file" id="file-input" name="fileContent"> </form> 然后就可以用 FormData 获取整个表单的内容: $("#file-input").on("change", function() { console.log(`file name is ${this.value}`); let formData = new FormData(this.form); formData.append("fileName", this.value); console.log(formData); }); 把input的value和formData打印出来是这样的: 可以看到文件的路径是一个假的路径,也就是说在浏览器无法获取到文件的真实存放位置。同时FormData打印出来是一个空的Objet

Base64

て烟熏妆下的殇ゞ 提交于 2020-01-23 03:49:34
文章目录 Base64 定义 产生原因 作用 使用场景 编码规则 常见问题 base64是加密算法? base64和UTF的区别? 参考文献 Base64 定义 将二进制文件转化为 ASCII码 中 可见 64个字符,即转换为可见文本。 产生原因 满足电子邮件中不能直接使用非ASCII码字符的规定。 作用 需要 将二进制文件通过 文本方式传输 时,避免原二进制文件的字符被特殊处理。 在大多数软硬件设备上,这64个字符 不会被特殊处理 ,从而实现 无错传输 。 使用场景 http的URL MIME格式的电子邮件 编码规则 base64的编码规则 常见问题 base64是加密算法? 严格来说Base64不能算是一种加密,只能说是编码转换。 base64和UTF的区别? base64将原本是二进制格式的文件(如图片)编码为ASCII码中的可见码,再被使用 UTF-8将原本为可见的文本转换为不可见的二进制数据,再被使用 参考文献 https://www.zhihu.com/question/36306744 为什么要使用base64编码,有哪些情景需求? http://www.ruanyifeng.com/blog/2008/06/base64.html base64笔记-阮一峰 https://juejin.im/post/5b7d50106fb9a019d7475785

Checking if an NSString contains base64 data

雨燕双飞 提交于 2020-01-23 03:22:51
问题 How can I check to see if an NSString contains base64 data in an if statement? Because base64 encodes the data in a completely random way, I can't search for a phrase within the NSString so instead I will need to check to see if the contents of the string results in a data file. 回答1: Here's a category on NSString I created that should work: @interface NSString (MDBase64Additions) - (BOOL)isBase64Data; @end @implementation NSString (MDBase64Additions) - (BOOL)isBase64Data { if ([self length] %

NodeJs之crypto

放肆的年华 提交于 2020-01-23 01:23:35
crypto crypto模块提供了加密脑功能,包括对OpenSSL的哈希、HMAC、加密、解密、签名以及验证功能的一整套封装。 下面整理了一些平常经常用到的加密解密方法: const crypto = require('crypto'); const assert = require('assert'); const Crypto = require('cryptojs').Crypto const _crypto = require('crypto') const cryptoJS = require('crypto-js') const mode = new Crypto.mode.CBC(Crypto.pad.pkcs7) const bytes = require('utf8-bytes') const aesKey = '' const aesIv = '' const algorithm = 'aes-128-cbc' 1. sha1 function sha1Sign(src) { const sha1 = crypto.createHash('sha1'); sha1.update(src); return sha1.digest('hex').toString(); } function makeSalt() { return crypto

Creating image from base64 string in NodeJS

拜拜、爱过 提交于 2020-01-22 19:17:59
问题 I am trying to upload an image that I extract from a my canvas and post via ajax, and I have trouble creating the image file on my server side. I have following this answer: https://stackoverflow.com/a/7347358/1358670 but still I seem to miss something here or there. Here is my javascript (browser) code: var img = myCanvas.toDataURL("image/jpeg"); // ajax request to send the image and in server side, I do the following: var fd = fs.openSync('./img.jpeg', 'w'); req.body.image = req.body.image

java-信息安全(三)-PBE加密算法

柔情痞子 提交于 2020-01-22 18:56:41
一、概述   Jasypt 这个Java类包为开发人员提供一种简单的方式来为项目增加加密功能,包括:密码Digest认证,文本和对象加密,集成 hibernate,Spring Security(Acegi)来增强密码管理。   Jasypt是一个Java库,可以使开发者不需太多操作来给Java项目添加基本加密功能,而且不需要知道加密原理。   根据Jasypt文档,该技术可用于加密任务与应用程序,例如加密密码、敏感信息和数据通信、创建完整检查数据的sums. 其他性能包括高安全性、基于标准的加密技术、可同时单向和双向加密的加密密码、文本、数字和二进制文件。Jasypt也可以与Acegi Security整合也即Spring Security。Jasypt亦拥有加密应用配置的集成功能,而且提供一个开放的API从而任何一个Java Cryptography Extension都可以使用Jasypt。   Jasypt还符合RSA标准的基于密码的加密,并提供了无配置加密工具以及新的、高可配置标准的加密工具。     1、该开源项目可用于加密任务与应用程序,例如加密密码、敏感信息和数据通信     2、还包括高安全性、基于标准的加密技术、可同时单向和双向加密的加密密码、文本、数字和二进制文件。     3、Jasypt还符合RSA标准的基于密码的加密,并提供了无配置加密工具以及新的

base64、opencv和PIL之间的互转

早过忘川 提交于 2020-01-22 16:28:21
导入的库: import cv2 from PIL import Image import numpy as np from io import BytesIO import json import base64 1、base64和PIL之间 1.1 base64转PIL rj = request.get_json() # 通过POST请求把base64的数据传过来 base64Image = rj['base64Image'] byte_date = base64.b64decode(base64Image) try: imagede = Image.open(BytesIO(byte_date)).convert('RGB') # 转成PIL except Exception as e: print('Open Error! Try again!') raise e image = np.array(imagede) # 把PIL格式的图片转成numpy 1.2 PIL转base64 image_pil = Image.fromarray(image_np) # image_np是numpy数据格式 output_buffer = BytesIO() image_pil.save(output_buffer, format='JPEG') byte_data = output

SpringBoot整合JWT Token

喜欢而已 提交于 2020-01-22 16:06:59
在文章之前,我们先介绍几个概念 OAuth2、JWT,Spring Security、Spring Security OAuth2 OAuth2 :Open Authorization,是一种授权协议, 是规范,不是技术实现。 JWT :JSON Web Token,是一种具体的Token实现框架。 Spring Security :前身是 Acegi Security ,能够为 Spring企业应用系统提供声明式的安全访问控制。该框架老古董了。 Spring Security OAuth2 :Spring 对 OAuth2 开源实现(与Spring Cloud技术栈无缝集成)。 目前用的最多是JWT,因此本文也是围绕JWT来实现。 1.什么是JWT JWT的原则是在服务器身份验证之后,将生成一个JSON对象并将其发送回用户。当用户与服务器通信时,客户在请求中发回JSON对象。服务器仅依赖于这个JSON对象来标识用户。 2.JWT的组成 JWT TOKEN分为三部分:header . payload . signature,因此JWT通常如下表示xxx.yyyyy.zz 2.1header 头部包含了两部分,token 类型和采用的加密算法。 alg 字段指定了生成signature的算法,默认值为HS256, typ 默认值为JWT。 如果你使用Node.js,可以用Node

浏览器端将语音转换为URL格式的字符串(base64 位编码)

折月煮酒 提交于 2020-01-22 13:03:21
我们可以在浏览器端,通过调用 JS 原生的 API ,将语音转换为文字,实现语音输入的效果。思路是: 录制一段音频; 将音频转换为 URL 格式的字符串( base64 位编码); 调用讯飞开放接口,将 base64 位编码转换为文本。 这篇文章实现前两步,将音频转换为 URL 格式的字符串( base64 位编码)。 这里将会用到于媒体录制相关的诸多 API ,先将其列出: MediaDevices ( MediaDevices 使用方法 ) MediaDevices 接口提供访问连接媒体输入的设备,如照相机和麦克风,以及屏幕共享等。 MediaDevices.getUserMedia() 会提示用户给予使用媒体输入的许可。 我们将要访问浏览器的麦克风。若浏览器支持 getUserMedia ,就可以访问麦克风权限。 MediaDevices.getUserMedia() ,返回一个 Promise 对象,获得麦克风许可后,会 resolve 回调一个 MediaStream 对象。 MediaStream 包含音频轨道的输入。 MediaRecorder ( MediaRecorder 使用方法 ) MediaRecorder() 构造函数会创建一个对指定的 MediaStream 进行录制的 MediaRecorder 对象。 MediaStream 是将要录制的流.