自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

砖业洋__

记点博客,防老年痴呆——扶我起来,我还能再搞一个bug

  • 博客(294)
  • 资源 (5)
  • 论坛 (8)
  • 收藏
  • 关注

原创 数据库MySQL详解

记录一下讲义笔记:目录第1章 数据库1.1数据库概述1.2数据库表1.3表数据第2章MySql数据库2.1MySql安装2.2登录MySQL数据库2.3SQLyog(MySQL图形化开发工具)第3章SQL语句3.1SQL语句3.2SQL通用语法3.3数据库操作:database3.4表结构相关语句3.4.1创建表...

2018-07-24 20:03:47 37080 11

原创 九、从华为HMS快速身份验证能力FIDO2看密码学知识

章节系列目录:点击跳转  你有没有发现支付宝、银行、淘宝、华为pay等等都是使用指纹支付,为什么指纹验证、面容验证通过它就能通过呢?本篇来说说背后的原理。根据华为开发者文档介绍FIDO2线上快速身份验证客户端:提供基于WebAuthn标准的FIDO2线上快速身份验证客户端实现,为应用及浏览器提供安卓Java API支持使用USB、NFC、蓝牙漫游认证器。支持指纹和3D面容的平台认证器。将系统完整性检测结果作为FIDO2认证的前置条件,保障认证结果更安全。BioAuthn

2020-10-24 18:26:25 424

原创 八、从华为HMS Core集成过程看密码学知识

章节系列目录:点击跳转  hms通过SDK提供的一些能力,即便是离线能力,安装apk之后第一次使用需要联网。因为需要后台校验一些配置信息,还包括指纹、包名、App ID等。如果校验不通过是无法调用这些API的。  这里不说上线应用市场,就看本地打release包,这里可能需要一些android开发基础才看得懂。文章目录1.在AppGallery Connect(华为开发者服务的后台)创建项目及应用2.生成签名证书3.选择签名的私钥查看证书并导出指纹。4.在AppGallery Connect(华为

2020-10-24 18:25:00 352

原创 七、从银行转账来看密码学知识

章节系列目录:点击跳转  现在转账大多数人都是在app上转账。  你在X银行转账,超过5W需要数字证书,安装数字证书之前需要验证你的身份,所以利用到人脸识别技术,如果通过,就证明了你就是你。服务器就会给你下发一个数字证书,里面就是属于你的私钥,这是一个私钥证书,证书里面是私钥。与之对应的公钥在服务端。私钥证书和https的公钥证书不一样。(这就是数字证书的知识)  这个证书就是你自己保管  当你想转账,你就要利用证书签名(其实就是利用证书的私钥签名),服务端利用公钥去验证,这样能证明确实是你

2020-10-24 18:23:51 306

原创 六、数字证书、证书链、HTTPS

章节系列目录:点击跳转文章目录数字证书为什么要使用数字证书认证中心证书链HTTPS数字证书  上一篇说过,数字签名并不能防止中间人攻击,这下就要看数字证书了。  数字证书是一个由可信的第三方发出的,用来证明公钥拥有者的信息以公钥的电子文件。为什么要使用数字证书  我们来总结一下前几篇的内容:  A 想要把一个带数字签名的文件传递给 B 。于是 A生成了公钥和私钥,用私钥签署了文件(数字签名)。然后把公钥上传到一个公共服务器上。如果一切顺利,那 B去下载这个公钥,然后就可以验证签名(公钥解密)

2020-10-24 18:22:29 275 1

原创 五、数字签名及存在的问题

文章目录数字签名防止假冒防止篡改事后否认数字签名的漏洞中间人攻击背景:A和B通信,X是中间人数字签名  上一篇我们说到了消息认证码可以防止假冒和篡改,而无法防止事后否认,这里我们会讲解数字签名为什么能解决这个问题。  当我们用私钥加密的时候,我们会把这个操作称为数字签名。防止假冒  X假冒A给B发消息,由于X没有A的私钥,无法生成正确的数字签名。即使X不签名直接发过去,B也会直接丢弃,所以X无法假冒。防止篡改1.A给B发文档,先把文档进行哈希,生成摘要,然后用自己的私钥对摘要加密生成数字

2020-10-24 18:20:32 188 1

原创 四、消息认证码、认证加密和重放攻击

章节系列目录:点击跳转文章目录消息认证码和认证加密消息认证码认证加密消息认证码如何预防假冒和篡改为什么要将密钥和密文hash来确定消息认证码?对称密码就能加密传输,为什么还要用消息认证码?重放攻击防重放方案背景:A和B通信,X是中间人消息认证码和认证加密消息认证码  消息认证码(Message Authentication Code)是一种确认完整性并进行认证的技术。但是消息认证码并不能保证消息的机密性。  A将生成消息认证码的对称密钥,以安全的方式发送给B。(就当做是面对面交流转手给B)

2020-10-24 18:18:49 281 1

原创 三、对称加密、非对称加密、混合加密

章节系列目录:点击跳转文章目录对称加密对称加密的有优缺点密钥分配问题非对称加密非对称加密的优缺点混合加密上一章节我们说到解决窃听的方法是加密,这里我们来说说加密对称加密  两边用同一个密钥来加解密。  A把明文通过某一算法加密之后得到密文,然后把密文发送给B,B接收到密文之后用相同的密钥执行相同的算法去解密。X没有密钥,即使窃取到密文也无法窃听。对称加密的有优缺点  对称加密的优点:加解密速度快  对称加密的缺点:会出现密钥分配问题密钥分配问题  对称加密的存在密钥分配问题,A的密钥怎么

2020-10-24 18:17:43 293 1

原创 二、哈希算法和Merkle Tree

章节系列目录:点击跳转文章目录哈希算法哈希函数的定义可靠哈希函数需满足的要求哈希函数的主要作用哈希实际例子Merkle Tree默克尔树完整性校验的方法哈希列表 Hash ListMerkle Tree 哈希树总结哈希算法哈希函数的定义  哈希函数:给一个任意大小的数据生成出一个固定长度的数据,作为它的映射。  你可以把哈希函数想象成“搅拌机”,一堆数据丢进去出来一段长度固定的16进制的数值就叫哈希值可靠哈希函数需满足的要求一个可靠的哈希算法要满足如下三点1.安全,给定数据 M 容易算出哈

2020-10-24 18:14:43 273

原创 一、信息传输中的安全隐患

在下面的例子中,A和B是信息传输的双方,X是中间人如果概念都理解,可直接进入第六章数字证书综合讲解章节系列目录:点击跳转隐患如下1.窃听  A找B借钱,写了借条“我找你借1000块钱,一周后还…”,但是在发送过程中,X窃取到了该内容。2.假冒  X冒充发送者:X冒充A找B借钱“我是A,找你借1000块钱,一周后还…”,然后B把钱按照要求汇款过去,一周后B找A要钱,A却说,我并没有找你借钱啊?  X冒充接收者:X冒充了B,A写借条给B,被X拦截,X并不想让B知道,于是回信“不借”,然后A就.

2020-10-24 18:13:41 270

原创 ES6本地实时转换ES5语法(供学习使用)

实际上babel是在项目中依托于webpack,这里单独提出来供学习对比语法使用文章目录非实时转换1.转换为单个文件2.多个文件分别转换实时监控准换在线转换如下babeljses6console(这个貌似翻墙才行)这里讲解本地转换和本地实时准换,供学习ES6和ES5的语法对比使用1.确保你已经安装好nodejs2.创建一个项目文件夹,比如babel-js3.进入到项目,执行 npm init -y 来初始化package.json,我个人使用的VScode,比较方便4.在终端Termi.

2020-10-04 16:28:52 97

原创 鸿蒙javascript项目开发----呼吸计时训练(基于华为轻量级运动手表)

没有能够熄灭满天星光每一位开发者,都是华为要汇聚的星星之火第一个鸿蒙app----华为轻量级运动手表b站学习视频我的代码仓库个人手敲代码,视频每一个章节的我都对应一个分支视频选集代码分支p4step1p5step2p6step3p7step4p8step5p9step6p10step7p11step8p12step9p13step10p14step11p15step12p16..

2020-09-28 19:11:12 6441

原创 一次javascript深拷贝引发的深入思考

A同学和B同学因为一次js深拷贝发生的一次争执。A同学:深拷贝是另一个对象占用另一块内存就行了,随手写出了如下代码:let a = { name: "lcy", age: 18};let b = Object.assign({}, a);console.log(JSON.stringify(b, null, 2));let c = {};for (let key in a) { c[key] = a[key];}console.log(JSON.stringi

2020-08-29 21:23:03 1911 3

原创 webpack打包Library库文件指南

本文示例仓库地址:https://github.com/liuchenyang0515/Library_pack我们先新建2个js文件math.js如下export function add (a, b) { return a + b;}export function minus (a, b) { return a - b;}export function multiply (a, b) { return a * b;}export function divisi

2020-08-04 23:06:03 175

原创 模块打包中CommonJS与ES6 Module的导入与导出问题详解

CommonJSCommonJS模块CommonJS中规定每个文件是一个模块。每个模块是拥有各自的作用域的,各自作用域的变量互不影响。// calculator.jsvar name = 'calculator.js';// index.jsvar name = 'index.js';require('./calculator.js');console.log(name); // index.js这里可以看到,导入calculator.js并不会覆盖index.js中的name字段这

2020-08-01 13:09:47 1809

原创 CommonJS与ES6 Module的本质区别

目录动态与静态值拷贝与动态映射循环依赖动态与静态动态与静态CommonJS与ES6 Module最本质的区别在于前者对模块依赖的解决是“动态的”,而后者是“静态的”。在这里“动态”的含义是,模块依赖关系的建立发生在代码运行阶段;而“静态”则是模块依赖关系的建立发生在代码编译阶段。让我们先看一个CommonJS的例子:// calculator.jsmodule.exports = { name: 'calculator' };// index.jsconst name = require('.

2020-07-31 17:09:55 1162

原创 webpack4.41+性能优化(高级篇)

以下配置是在webpack 4.43.0测试,文章末尾给出devDependencies可用于生产环境:babel-loader缓存优化ignorepluginnoparsehappyPackParallelUglifyPlugin不可用于生产环境的:自动刷新热更新DllPluginbabel-loader的缓存优化module: { rules: [ { test: /\.js$/, .

2020-07-19 16:16:09 1065

原创 JS 异步
原力计划

1.问答题①请描述event loop(事件循环/事件轮询)的机制,可画图因为js是单线程运行的,所以异步要基于回调来实现,而event loop就是异步回调的实现原理JS先把同步代码执行完再去执行异步代码,如果某一行执行报错,则停止下面代码的执行。通过例子来讲event loop机制运行大致过程如下同步代码顺序执行,遇到异步就记录一下,等待时机(定时、网络请求等执行完),移动到Callback Queue,如果Call Stack调用栈为空(即同步代码执行...

2020-07-05 17:12:01 1210

原创 这次把 javascript 闭包给你讲的明明白白
原力计划

目录引入(闭包和块作用域)理解闭包:常见的闭包:闭包的作用:闭包的生命周期:利用闭包的实际例子(返回价格的区间元素)移动动画的抖动和加速(闭包应用,动画演示)根据闭包进行传入字段排序(通用排序)闭包内存泄漏的解决方法闭包导致的this遗留问题(教你判断this指向口诀)闭包的其他应用: 定义JS模块点赞再看,养成好习惯,总结不易,老铁多多支持~引入(闭包和块作用域)<!DOCTYPE html><html lan...

2020-06-26 14:48:35 1597 3

原创 记录ES6作用域的坑

摆事实讲道理例子1function a(b) { console.log(b); var b = 10; function b(){};}a(30);实际上上面这段代码是这么执行的,请看下面代码的注释function a(b) { // 实际上是这样变量函数提升的 // var b; // var b = 10的b变量提升 // var b = 30; // 形式参数的b // var b = function() ...

2020-06-20 13:00:42 428

原创 点击按钮背景变灰色,松开恢复原来色

点赞再看,养成好习惯~~~~demo有的页面有100多个列表项,需要点击列表项的时候背景变灰色,松开后背景恢复原来色,这个样式加上才让人更清楚地看到是点击的哪一个按钮,视觉友好。最初的时候我是想用js逻辑去修改样式,如果点击了,那么就改为灰色,松开后,再改为白色。结果demo有100多个列表项,我也不可能加上100多个监听,我突然想起以前学的事件代理,然后就实践了一把。出现了如下代码<script>..... let ul = document.getElem.

2020-06-09 09:57:33 656

原创 js除了立即执行函数,你还可以这么玩 (预计阅读 1 min)

假如在同一个目录下,两个js里面可能有同名函数,后面js里定义的函数会覆盖前面js定义的函数,为了避免冲突,要用模块化的思想解决问题,大家可能都会使用立即执行函数去解决。如下简单例子:test.html<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-widt.

2020-05-29 17:46:41 465

原创 box-sizing——移动Web开发者不得不知的属性

大忙人可以直接看结论关于box-sizing的值box-sizing: content-box 盒模型宽/高 = width/height + padding + borderbox-sizing: border-box 盒模型宽/高 = width/height不忙的小伙伴来跟着我一起看看详细的例子加深印象代码如下,结构清晰&lt...

2020-05-01 20:51:03 452

原创 图文并茂让你必须弄懂 viewport
原力计划

PC端不需要关注viewport,只有移动端才需要关注视口的概念。移动设备上的viewport就是设备的屏幕上能用来显示我们的网页的那一块区域,在具体一点,就是浏览器上(也可能是一个app中的webview)用来显示网页的那部分区域,但viewport又不局限于浏览器可视区域的大小,它可能比浏览器的可视区域要大,也可能比浏览器的可视区域要小。如果有这么一个页面,PC端显示如下,图片大...

2020-05-01 16:26:17 508

原创 图文并茂带你弄懂物理分辨率、分辨率、物理像素、逻辑像素、dpr、ppi
原力计划

什么是分辨率我们把一个个像素点当成小格子,那么下图的分辨率就是4 * 2的分辨率,代表纵向有4个像素点,横向2个像素点我们经常所说的分辨率1024*768就是纵向有1024个像素点,横向有768个像素点很明显,显示相同尺寸的屏幕,肯定是点越多,显示的越精细,效果越好。那图中这些像素点是什么呢?其实就是物理像素。什么是物理像素物理像素(physical ...

2020-04-16 21:58:59 807

原创 你觉得应该如何把伪数组转换为数组?

目录什么是伪数组?ES5中伪数组转换成数组ES6中伪数组转换成数组Array.from语法什么是伪数组?伪数组对象是按照索引方式存储数据的,它具备length属性,就像下面这样{ 0: 'a', 1: 'b', 2: 'c', length: 3}即除了length以外的key都是数字。伪数组调用不了数组的API,比...

2020-04-15 21:24:41 422

原创 带你领略JavaScript数组遍历你压根没想过的惊艳操作
原力计划

入门级通用for循环// 最普通最简单的for循环const arr = [1,2,3,4,5]for(let i = 0; i < arr.length; ++i){ console.log(arr[i]);}forEach(ES5新增)//forEach循环const arr = [1,2,3,4,5]arr.forEach(function ...

2020-04-15 20:42:50 608

原创 Vue中的表单绑定(全 gif 演示)
原力计划

<!DOCTYPE html><html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <...

2020-03-22 15:52:44 593 2

原创 Vue中的事件绑定和修饰符
原力计划

@click的方法只写了方法名没括号?<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0">...

2020-03-21 18:23:08 551

原创 2020前端面试题含解析汇总——基础篇(五)

您的关注收藏是我持续更新总结的动力!欢迎各位大佬不吝才华补充更全面的解析供大家参考~2020前端面试题含解析汇总——基础篇(一)2020前端面试题含解析汇总——基础篇(二)2020前端面试题含解析汇总——基础篇(三)2020前端面试题含解析汇总——基础篇(四)2020前端面试题含解析汇总——基础篇(五)本篇主要总结编程题(16题)、其他综合内容(12...

2020-03-08 20:34:50 1655

原创 2020前端面试题含解析汇总——基础篇(四)

您的关注收藏是我持续更新总结的动力!欢迎各位大佬不吝才华补充更全面的解析供大家参考~2020前端面试题含解析汇总——基础篇(一)2020前端面试题含解析汇总——基础篇(二)2020前端面试题含解析汇总——基础篇(三)2020前端面试题含解析汇总——基础篇(四)2020前端面试题含解析汇总——基础篇(五)本篇主要总结JQuery(17题)、Bootst...

2020-03-08 19:15:27 1571

原创 2020前端面试题含解析汇总——基础篇(三)

您的关注收藏是我持续更新总结的动力!2020前端面试题汇总——基础篇(一)2020前端面试题汇总——基础篇(二)2020前端面试题汇总——基础篇(三)2020前端面试题汇总——基础篇(四)2020前端面试题汇总——基础篇(五)...

2020-03-08 12:54:17 2859 2

原创 2020前端面试题含解析汇总——基础篇(二)
原力计划

您的关注收藏是我持续更新总结的动力!2020前端面试题汇总——基础篇(一)2020前端面试题汇总——基础篇(二)2020前端面试题汇总——基础篇(三)2020前端面试题汇总——基础篇(四)2020前端面试题汇总——基础篇(五)...

2020-03-07 21:23:09 4017 4

原创 2020前端面试题含解析汇总——基础篇(一)

您的关注收藏是我持续更新总结的动力!2020前端面试题汇总——基础篇(一)2020前端面试题汇总——基础篇(二)2020前端面试题汇总——基础篇(三)2020前端面试题汇总——基础篇(四)2020前端面试题汇总——基础篇(五)次回----CSS部分关注、留言,我们一起学习,您的收藏是我持续更新的动力!===============Ta...

2020-03-07 20:41:47 8054 1

原创 解决webpack打包静态资源(样式)无法添加厂商前缀-webkit -moz -ms -o的问题

可以设置以下browserlist,现在webpack默认你的项目支持高版本浏览器,你给支持的浏览器版本设置低一点,就出来前缀了我们在package.json里面加上如下内容重新打包运行就可以出来 "name":"lcy", "dependencies":{.....} // 加上下面的内容 "browserslist": [ "last 1 ve...

2020-02-23 11:52:48 2754

原创 Vue动态组件、v-if+v-once、v-show的区分使用

当我们想做出一个toggle的效果,比如点击一下显示文字1,再点击显示文字2,再点击显示文字1....这样交替进行的时候,大家是怎么做的呢?...

2020-02-20 12:41:32 837

原创 Vue作用域插槽(vue2.5淘汰语法和vue3.0支持的语法对比)

目录不用作用域插槽的情况用作用域插槽解决上面问题(Vue2.5旧语法,Vue3.0不再包含)用作用域插槽解决上面问题(Vue2.6+新语法,Vue3.0支持)前篇:Vue中的插槽和具名插槽(vue 2.5已淘汰的语法和vue3.0支持语法对比)有了插槽和具名插槽的基础之后,我想如何让大家能够通俗易懂的理解作用域插槽(说实话,刚学这个知识点的时候官方文档我前后看了好多遍都没...

2020-02-16 20:37:02 1130

原创 Vue中的插槽和具名插槽(vue 2.5已淘汰的语法和vue3.0支持语法对比)

目录不用插槽slot的我们应该怎么做vue的插槽slot基本用法了解具名插槽没有具名插槽抛出的问题具名插槽vue 2.5语法展示(已被官方废弃且不会出现在Vue 3中)具名插槽vue 2.6+语法展示(Vue 3支持)首先来看看插槽的使用场景不用插槽slot的我们应该怎么做<!DOCTYPE html><html lang="en">...

2020-02-16 16:27:17 1258

原创 Vue非父子组件之间的传值

<!DOCTYPE html><html lang="en"> <head> <meta charset="UTF-8"> <title>非父子组件间的传值(Bus/总线/发布订阅模式/观察者模式) </title> <script ...

2020-02-15 20:40:55 614

原创 Vue中的set、delete方法在列表渲染中的使用

不知大家是否有过类似的经历,比如说渲染list中的数据,渲染完成后,给list添加数据后却没有在页面中渲染出来

2020-02-15 12:52:51 1937

图文并茂让你必须弄懂viewport配套示例代码.rar

https://blog.csdn.net/qq_34115899/article/details/105717845配套代码

2020-05-01

chrome插件

安装在新版chrome会失败,用这个直接导入,可以在chrome://version插件extensions,去里面找到位置放就行

2020-04-19

Vue.js视频教程代码2--11讲.rar

vue推广视频代码,仅供学习,不喜欢请勿下载。vue推广视频代码,仅供学习,不喜欢请勿下载。vue推广视频代码,仅供学习,不喜欢请勿下载

2019-12-29

900多个安卓开发小图标精美小图标很漂亮

基本图标,可供使用,分值不高,可供下载。图标去帮助我们设计更好看的UI。。。可供学习

2018-04-20

互动粉丝资源

无敌窃取辅助无敌窃取辅助无敌窃取辅助无敌窃取辅助无敌窃取辅助无敌窃取辅助无敌窃取辅助无敌窃取辅助

2016-02-29

新手lcy的留言板

发表于 2020-01-02 最后回复 2020-01-02

在脉脉看到好多人喷CSDN

发表于 2018-12-06 最后回复 2018-12-07

关于新编译器的不足

发表于 2018-07-08 最后回复 2018-07-10

null无法显示

发表于 2018-06-18 最后回复 2018-06-18

c#java、javaScript模版均无法显示null

发表于 2018-05-07 最后回复 2018-06-18

代码中无法打出null

发表于 2018-05-07 最后回复 2018-06-18

建议问题

发表于 2018-05-06 最后回复 2018-05-06

CSDN手机端不同步

发表于 2018-04-26 最后回复 2018-05-06

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除