bash切换zsh后.bashrc文件失效的解决方案

问题

  • bash切换到zsh后,发现原先bash下的bashrc文件配置都失效了(显示zsh: command not found字样,当然如果手动通过source FileName加载是可以的),macOS Catalina(10.15.5) 已经默认切换到zsh,那么如何实现不用每次加载.bashrc文件就实现alias等便捷功能呢?

解决方案

  1. 使用系统级的/etc/zshrc/etc/zprofile
  2. 使用用户级的~/[X]bashrc~/[X]profile
  • 鉴于/etc/zshrc里有较多zsh特性配置,而且默认全局加载,因此这里通过编辑用户级的profile并加载原先的bashrc(即Bash Shell下用户文件)来实现我们的需求
详细步骤
  • 复制系统文件并修改权限

  • 追加自定义配置项,加载Bash Shell.bashrc文件

  • 测试

参考链接


Bash切换Zsh后,bashrc文件失效的解决方案

macOS Catalina(10.15.5)用蓝牙PAN共享Wi-Fi上网

今天有需要共享上网进行抓包分析报文的情况。

研究了一下MacBook Pro(macOS Catalina(10.15.5))如何通过蓝牙PAN(Bluetooth PAN)来共享笔记本连接的Wi-Fi网络出来,让手机通过共享出来的蓝牙热点来上网的方法。

由于蓝牙PAN(Bluetooth PAN)本质属于局域网转发,起到一个简单网关的作用。因此我们需要设置蓝牙设备的IP地址跟需要共享的Wi-Fi网卡相同。

具体操作如下:

继续阅读macOS Catalina(10.15.5)用蓝牙PAN共享Wi-Fi上网

Android默认调试签名证书

今天遇到了需要手工用调试签名重新签名APK文件的一个需求。

Android默认调试签名证书位置

Windows:

macOS Catalina:

证书密码 :android

签名脚本:

参考链接


macOS Catalina(10.15.4)安装应用提示"无法打开"XXXX",因为无法验证开发者"的解决方法

macOS Catalina(10.15.4)使用HomeBrew安装SageMath

启动的时候提示如下:

继续阅读macOS Catalina(10.15.4)安装应用提示"无法打开"XXXX",因为无法验证开发者"的解决方法

macOS Catalina(10.15.4)下RsaCtfTool的安装及使用

在CTF比赛中,往往会涉及到RSA解密类的题目,有了这个工具(基于python3.x)做起来就得心应手了。

这个也可以作为安全工具来使用,检查密钥的安全性。

RSA简介

为了方便理解,先对RSA密钥体制做个简略的介绍。

  1. 选择两个大的参数,计算出模数 N = p * q
  2. 计算欧拉函数 φ = (p-1) * (q-1),然后选择一个e(1<e<φ),并且e和φ互质(互质:公约数只有1的两个整数)
  3. 取e的模反数d,计算方法为:e * d ≡ 1 (mod φ) (模反元素:如果两个正整数e和n互质,那么一定可以找到整数d,使得 e * d - 1 被n整除,或者说e * d被n除的余数是1。这时,d就叫做e的“模反元素”。欧拉定理可以用来证明模反元素必然存在。两个整数a,b,它们除以整数M所得的余数相等:a ≡ b(mod m),比如说5除3余数为2,11除3余数也为2,于是可写成11 ≡ 5(mod 3)。)
  4. 对明文m进行加密:c = pow(m, e, N),可以得到密文c。
  5. 对密文c进行解密:m = pow(c, d, N),可以得到明文m。
整理:

pq:两个大的质数,是另一个参数N的的两个因子。
N:大整数,可以称之为模数
ed:互为无反数的两个指数
cm:密文和明文
(N, e):公钥
(N, d):私钥
pow(x, y, z):效果等效pow(x, y)% z, 先计算xy次方,如果存在另一个参数z,需要再对结果进行取模。
密钥长度:n以二进制表示的的位数,例如密钥长度为512代表n用二进制表示的长度为512bit

RSA安全性分析

对于RSA加密算法,公钥(N, e)为公钥,可以任意公开,破解RSA最直接(亦或是暴力)的方法就是分解整数N,然后计算欧拉函数φ(n)=(p-1) * (q-1),再通过d * e ≡ 1 mod φ(N),即可计算出 d,然后就可以使用私钥(N, d)通过m = pow(c,d,N)解密明文。

保障RSA的安全性

1. 定期更换密钥
2. 不同的用户不可以使用相同的模数N
3. p与q的差值要大,最好是差几个比特
4. p-1与q-1都应该有大的素因子,一般建议选择的两个大素数p、q使得p=2p+1和q=2q+1也是素数
5. e的选择不要太小
6. d的选择也是不可以太小,最好满足d>=n的4分之1

参考链接


在macOS Catalina(10.15.4)安装ADB(Android调试桥)

什么是 ADB?

Android调试桥( adb )是一个开发工具,帮助安卓设备和个人计算机之间的通信。 这种通信大多是在USB电缆下进行,但是也支持Wi-Fi连接。 adb 还可被用来与电脑上运行的安卓模拟器交流通信。 adb 对于安卓开发来说就像一把“瑞士军刀”。

通过 Homebrew 安装

测试是否正常安装

手动安装

1、如果你以前安装过,请先删除老的文件

2、下载 android-sdk-macosx

下载地址:developer.android.com

3、将下载的文件解压并移动到 ~/.android-sdk-macosx

4、运行 SDK Manager

5、根据你的需要选择,(我只需要Android SDK Platform-tools)[可选步骤]
6、选好后 Install
7、环境变量设置

8、更新配置文件

9、测试是否正常安装

参考链接


在 MAC OS X 安装 ADB (Android调试桥)

macOS Catalina 10.15.2安装配置WordPress 5.3.2并建立PHP调试环境

macOS Catalina 10.15.2 自带的 Apache2PHP 在配置的时候,非常困难,而且不管如何配置,都没办法跟 MySQL 数据库连接,总之会出现各种问题,而且各种插件安装异常麻烦。

尝试过使用 brew 安装 MySQLXAMPP,但是也是都没办法成功配置。macOS系统更改了太多的东西,各种不方便啊。

最后还是使用 XAMPP-VM 或者干脆搭建一个 VirtualBox 虚拟机在 Linux 下进行开发吧。

下面,我们介绍一下使用 XAMPP-VM 进行开发的方法。

继续阅读macOS Catalina 10.15.2安装配置WordPress 5.3.2并建立PHP调试环境

如何检查macOS SSD健康状态,保持系统及文档安全

苹果为了保持自家一定领先地位,在 MAC 设备上都采用了 SSD 磁盘。为了帮助用户关注磁盘运行状况,macOS 系统中已经内置了检查内置 SSD 和其它已连接磁盘运行状态的相关工具。以便在SSD 固态磁盘挂掉之前,就让用户提前检测并知晓其工作状态。

各种存储介质,包括 SSD,其实都是消耗品。这意味着一旦磁盘挂了,不仅会影响系统正常运行,甚至存储的文件都会有损失的风险。

继续阅读如何检查macOS SSD健康状态,保持系统及文档安全

解决macOS 10.15.2下Python的tkinter库Entry无法输入中文

问题描述

macOS 10.15.2下使用 tkinter Entry 输入框,无法输入中文,不管怎么样都只能输入英文,只能复制进去中文,交互体验很不好ಥ_ಥ。

我的版本是 macOS 10.15.2python 3.7.5

继续阅读解决macOS 10.15.2下Python的tkinter库Entry无法输入中文