My First Post      My Facebook Profile      My MeOnShow Profile      W3LC Facebook Page      Learners Consortium Group      Job Portal      Shopping @Yeyhi.com

Pages










Showing posts with label anwar. Show all posts
Showing posts with label anwar. Show all posts

Wednesday, November 1, 2017

Delete Cache & Cookies for specific website in Non-IE Browsers like Chrome and Firefox

At times, we may feel the need to delete or clear the Cache & Cookies for a specific website only – and not the entire Browsing History – especially if you face errors like 400 Error or Server / inaccessible errors.  Sometimes, for a .Net type of application, you also get errors like the constructor to deserialize an object of type 'Autofac.Core.DependencyResolutionException' was not found.


In all such cases, you have already seen how to Clear Internet Cache & Cookies for a particular domain in Internet Explorer. Now let us see how to do it in Chrome and Firefox browsers.

Normally, we simply the entire Cookie cache of that browser. This will mean that, when you exercise this option, you will be clearing all the Cookies. But if you don’t to do this, you will have to clear the Cookie for that particular domain only.

Clear Cache & Cookies for specific website in Chrome

Open your Google Chrome browser and then open its Settings. Click on Show advanced settings and the scroll down till you see Privacy.

Now click on the Content settings button. You will see a new panel pop-up with settings for Cookies right on the top. In newer versions, scroll down some bit and you will see this screen.

Search here for the website whose cookies you want to neutralize. Click on the All cookies and site data button to open the following panel.


Delete Cache & Cookies for specific domain in Firefox

Open your Mozilla Firefox web browser and then open its Options. Select Privacy next. Here under History, you will see ‘You may want to clear your recent history or remove individual cookies‘. Click on the ‘remove individual cookies‘ link to open the following panel.


Search for the domain, select the Cookies you want to delete and then remove those Cookies.


You can also use CookieSpy a freeware that lets you manage Cookies of all Browsers in one place. Use it to delete Cookies from a particular domain.



Monday, October 16, 2017

Threat hunting, mitigation and Vulnerability Management




This article is a part of my series 'Security is our duty and we shall deliver it'

Threat hunting is a very deep and strong method to deal with security issues in markets and solutions that need stringent regulations, policies and have risks involved. It is the process of proactively and iteratively searching through networks to detect and isolate advanced threats that evade existing security solutions. According to SANS institute, the threat hunters are actively searching for threats to prevent or minimize damage. The formal process of threat hunting should not be confused with an attempt to prevent adversaries from breaching the environment or for defenders to eliminate vulnerabilities in the network. 


We employ SIEM tools typically only provide indicators at relatively low semantic levels. There is therefore a need to develop SIEM tools that can provide threat indicators at higher semantic levels. As the industry itself is developing around it, we also have our feets wet in the process. We have our Chief Security consultant actively involved in all the three methods viz. Analytics-Driven, situational-Awareness Driven and Intelligence-Driven. As an accompalished engineer he is a master of monkey and fuzzy tests as well.


For bug logging and defect tracking we use home grown technologies as well as Atlassian tools like Jira. For the cyclical practice of identifying, classifying, remediating, and mitigating vulnerabilities, i.e Vulnerability management we have adept leaders to lead and guide teams in teams in using vulnerability scanners. We have successfully employed Coverity and various checkstyles and PMD level rules. 


We have a set of our own scripts and systems to analyze and investigate for known vulnerabilities such as open ports, insecure software configurations, and susceptibility to malware infections. Like stated above, we have masters of fuzzer techniques who can work with us 24x7. Unknown vulnerabilities, such as a zero-day, and complex threats are all under our hand. We have consultants worked with a variety of antivirus software and heuristic analysis mechanisms. You remember we said, we have smartest of security consultants!


You can read and download the article from:
https://www.slideshare.net/toughjamy/security-is-our-duty-and-we-shall-deliver-it-white-paper

Read on LinkedIn:
https://www.linkedin.com/pulse/security-our-duty-we-shall-deliver-mohd-anwar-jamal-faiz/

Security is our duty and we shall deliver it! - A White Paper For Software Security Organizations

Recently, I wrote a White paper. It is titled as - 'Security is our duty and we shall deliver it!'


This paper could be best described in following words-

Quality Management, Information Security, Threat Hunting and Mitigation Plans for a Software Company or a Technology Start-up engaged in building, deploying or consulting in Software and Internet Applications.


The chief sections of the document would be:

  1. Introduction to Enterprise Risk & Cyber Security
  2. The technologies we employ in
  3. Types of Software testing
  4. Some examples of Cyber Security Firms and what they do
  5. How we achieve a secure product
  6. InfoSec and Managed Security Service Provider
  7. Training and development
  8. Safeguarding against Phishing and Multi-Factor Authentication
  9. Threat hunting, mitigation and Vulnerability Management
  10. The denouement


You can read and download the article from:
https://www.slideshare.net/toughjamy/security-is-our-duty-and-we-shall-deliver-it-white-paper

Read on LinkedIn:
https://www.linkedin.com/pulse/security-our-duty-we-shall-deliver-mohd-anwar-jamal-faiz/



Following blog posts are must read for any Software Quality and Security Professional or an organization working in this field:

http://www.w3lc.com/2010/05/veracode-as-new-whitebox-testing-tool.html

http://www.w3lc.com/2012/02/analysis-of-valgrind-still-reachable.html

http://www.w3lc.com/2011/07/stress-testing-what-how-when.html

http://www.w3lc.com/2011/02/types-of-software-testing.html

http://www.w3lc.com/2010/10/dos-and-ddos-clarification-on-hacking.html

http://www.w3lc.com/2010/05/baseline-and-traceability-matrix.html

Cheers my readers.
You are my reason to be motivated.

- M. Anwar Jamal Faiz










Saturday, May 20, 2017

AMU Engineering cut off explained : Demystifying questions like Can I get admission in the Aligarh Muslim University BTech with a score of 72?

This article will explain you every bits of AMU Engineering cutoff and waiting lists.

To start with, a simple answer to what is the cutoff for the engineering entrance examination - Fluctuating!

Many of the young students often ask questions like: Can I get admission in the AMU BTech with a score of 72? My reply to all of them would be - You are just on margin and nothing can be predicted surely at this score!

Having said that, I congratulate them on the efforts they put in. They surely are among good students who have the mettle to get admitted to this prestigious university. To anyone with this high score, you now have 3 options:

1. Wait and watch for the results to come. I wish you all the best and once selected respond here with the good message.
2. Hold tight! You might also get included in Waiting lists. There might be 3 waiting lists in themselves. You can get admission if people drop off and do not take admissions.
3. Start focusing on more exams and preparations should never loose focus waiting on the results on one exams. Exams are a part of life, and not the life itself!



It should be understood that the cutoff shall be based on some of the influential factors which affect the same to a great extent. Various aspects are taken into consideration while announcing the AMUEEE 2017 Cutoff Marks. It varies highly with the difficulty level of question paper and other factors. Generally,  for moderate level of difficulty , it is around 70-75 for external students and around 60-65 for internal students.



The total number of seats are around 365 and number of seats in different trades are as follows:
Chemical Engineering - 30
Civil Engineering - 60
Computer engineering - 50
Electrical Engineering - 60
Electronics Engineering - 50
Mechanical engineering - 90
Petrochemical Engineering - 20
BArch - 20


The cutoff depends on how many well prepared candidates appeared for the exam that year, question paper and if you are internal or external. Some important factors that you can include in guessing the cutoff present year are listed as following:

  • Total Number of students
  • Availability of seats
  • Toughness level of examination
  • Lowest and average marks in the entrance examination
  • Marking scheme
  • Performance of the candidates
  • Previous year cutoff trends


As per the official notifications:

AMU determines the minimum scores obtained by the candidates to be considered for admission to various engineering courses at the university. AMUEEE 2017 cutoff involves various important aspects. The vital aspects are given below.
For admission to various undergraduate engineering courses at AMU, the candidates have to either score the minimum required cutoff marks or above that.
AMU conducts AMUEEE 2017 and is the competent authority that decides AMUEEE 2017 cutoff marks.
AMUEEE cutoff 2017 is determined by various factors like candidates’ performance level, seat capacity of the respective courses, total number of test takers, and difficulty level of the paper and reservation policy.
Aspirants, who fail to secure the minimum marks required for admission to AMU through AMUEEE 2017, will not be considered eligible for admissions to B. Tech courses at the university.
On the basis of AMUEEE 2017 cutoff, AMU prepares AMUEEE 2017 merit list for the examinees.
As per their ranks in AMUEEE 2017 merit list, seats are allocated to candidates.



My three advises here:

  1. Concentrate on your preparations and give your best shot. Don't prepare with a preset target score as it can deceive you into making a wrong decision at your test date. Think 95% plus!
  2. Even if you don't get your favorite branch, you have a chance to change your branch in the beginning of your second year, provided you study well. I did that. You need to have very high scores in your first year results.
  3. In case you get a waiting list, do not be disheartened. There is a good chance that it will get clear as many would cancel their admissions. 


I wish all the students a very best of luck in all the engineering entrance exams. You all are a gem and a treasure for the nation.

Jai Hind & Jai Ho!


Sunday, May 14, 2017

Using Github ReadMe opened programatically : How to open and read the ReadMe.md file dynamically


It is noteworthy to understand that HTML does work in the ReadMe.md file. With this clear understanding, I guess many of such questions would be automatically answered like - how to make bold font in ReadMe file, or how to insert image etc. Also note that it depends a lot on what application/ text editor you are using and also lot on the OS. 


Recently I had trouble in inserting blank line character in the Readme.md file of Github. I personally preferred < br /> tag there, and i have a full post describing the same: http://www.w3lc.com/2017/05/new-line-in-readme-file-github-fixing.html.


I have demonstrated the change in a git commit in the Github repository explained in the post. See: https://github.com/Anwar-Faiz/Simple-Java-Unicode/commit/85bd54531067ff4055c5e8801aba5324221d5ae3



This understanding was much needed to handle the question and also to find many other uses of why you would probably need to do it!



Further, to answer the question straight, you need two steps: 

1. Find the Url for the ReadMe.md file in Raw version. For example see one: https://raw.githubusercontent.com/Anwar-Faiz/forkrap/master/README.md 

How to open Raw view of ReadMe.md file: ( See screenshot )



2. Now if you want to use server side the using file_gets_content etc of php you can load the url. Or, if you want to use jquery, you can use the Load().



** Do, also notice that if you do View Source of the Raw URL page, you just see, plain text. So, you don't need to do much text parsing stuffs as well :) This is a good news.

** Next you can use unescape functions or tools like codebeautify to unescape the characters that can alter with the look and feel of your HTML like ' <   " etc etc.



Using Github ReadMe opened programatically : How to open and read the ReadMe.md file dynamically: https://www.w3lc.com/2017/05/using-github-readme-opened.html

To create sophisticated formatting for your prose and code on GitHub with simple syntax, you can refer the basic writing and formatting syntax at: https://help.github.com/articles/basic-writing-and-formatting-syntax/


Have a great Day dear :)

@Anwar Jamal Faiz


Saturday, May 13, 2017

New line in ReadMe file Github: Fixing the blank new line break issue in ReadMe.Md files in Github

This post is aimed to fix a very simple issue - Fixing the blank new line break issue in ReadMe.Md files in Github. You can find the ReadMe.Md file which had this problem and how it was fixed in my Github repository: https://github.com/Anwar-Faiz/Simple-Java-Unicode


When editing an issue and clicking Preview the following lines in Read me file:
a
b
c
i.e. it shows every letter on a new line.

However, it seems sometimes that after pushing similar markdown source structure in README.md joins all the letters on one line.

Issue: This usually happens because of different Operating systems and text editors used.


Solution:
Interpreting newlines as
used to be a feature of Github. But recent documentations do not list this as a feature. So, you have to do it manually. But its easy!

Method 1: Introduce a __ character at end of each line. _ acts as a blank space
i.e transform:
a
b
c
as following in the ReadMe.md file:
a__
b__
c
(where ).

Method 2: Explicitly add
tags.
Eg:
a
b
c


I personally prefer method 2 for a number of reasons. For example you can see following commit of mine just to fix the same issue:
https://github.com/Anwar-Faiz/Simple-Java-Unicode/commit/85bd54531067ff4055c5e8801aba5324221d5ae3


Using Github ReadMe opened programatically : How to open and read the ReadMe.md file dynamically: https://www.w3lc.com/2017/05/using-github-readme-opened.html

New line in ReadMe file Github: Fixing the blank new line break issue in ReadMe.Md files in Github
https://www.w3lc.com/2017/05/new-line-in-readme-file-github-fixing.html

To create sophisticated formatting for your prose and code on GitHub with simple syntax, you can refer the basic writing and formatting syntax at: https://help.github.com/articles/basic-writing-and-formatting-syntax/

Cheers ;)
Anwar Faiz

Method hiding Vs overriding in C# : New feature that can be cause of big troubles later

In here, I tried to show a new feature in C# or Visual studio languages. This is not in Java, and I have proactively tested that ;)

Example: Class A has a Print method; class B inherits from class A and implements the Print method as well. Now Print method will be overridden. Simple!

But now, test carefully that what happens if you change the Print method signature in class B. If you add the new keyword there, a behavior changes. In this case the method does not overrides. In fact it will hide the method. For references, i have the Github repository up and running: https://github.com/Anwar-Faiz/Method-Hiding-Demo

Most Important: In normal object calls, this one will not be caught. The behavior difference is seen when you make an object with parent class variable.


Let us start with defining some classes, and see a working example:

class A
    {
        public string Print()
        {
            return "A";
        }
    }

    class B : A
    {
        public string Print()
        {
            return "B";
        }
    }

    class A2
    {
        public string Print()
        {
            return "A2";
        }
    }

    class B2 : A2
    {
        public new string Print()
        {
            return "B2";
        }
    }

Now let us write a program to check the behavior in both ways. See attached screenshot:



The result of the run is as follows:


Demo of overriding...
 a.Getname : A
 b.Getname : B
 a2.Getname : A2
 b2.Getname : B2

Demo of method hiding...
 x.Getname : A
 y.Getname : A2



Now this clearly shows that in the second case, the method of child class becomes hidden!


Issues seen with this new feature in Visual Studio C#:
What I foresee here are a couple of problems and i am describing the same:
1. Programmers of other languages reading this part of code, will have a tough time understanding what is happening.
2. There is a huge difference between the way overriding works and this method hiding functionality behaves, this new feature may prove to be step going back to Non-OOP days!
3. More importantly, the function written in the child class, gets of no use now. It becomes hidden, in a way.
4. I further see that it is default behavior in C#. This means that you do not even need to write the new keyword. Also, if the method on the base class is marked as virtual, and you forget to mark the method on the inheriting class with override, you might land in method hiding.
5. If a bug is encountered, it will be hard to find that the trouble is cause of a new keyword.


Proposed solution to team Microsoft working on this:
As we know, since already introduced, it will be tough to remove it. Particularly, because many have already started using in their projects. I know the team Microsoft spends a lot of effort on giving backwards compatibilty, and they are really good at that!.So, the best option is to introduce the Warning on Visual Studio Editor. You can also raise a compile time warning.

PS: You can download working repository of code sample at:
https://github.com/Anwar-Faiz/Method-Hiding-Demo


Have a happy coding and testing guys!
@Anwar Faiz


Tuesday, May 9, 2017

Unicode characters in Eclipse console : Resolving Eclipse IDE issue when console runner not shows Unicode and Multibyte characters.

First of all little gyaan:

What is Unicode character string:
Earlier we used ASCII etc to encode characters. But the limit of the number of characters were less. Obviously, you cannot capture world in 256 numbers!
Then we developed some more encoding to cater to all languages but many of them had issues like below:
1. A particular code value corresponds to different letters in the various language standards.
2. The encodings for languages with large character sets have variable length. Some common characters are encoded as single bytes, other require two or more byte.

Here enters our beloved Unicode. Our hero, a new language standard was developed and in this character holds 2 byte. Hence, java or C++ or any language, uses 2 byte for characters representation.

lowest value:\u0000
highest value:\uFFFF


My problem statement in this post is that sometimes the unicode characters are not visible in the output console of Eclipse IDE. This blog post aims to solve that.



Suppose our program is:
public class Simple{
public static void main(String... args){
System.out.println("Hi World!");

String arabicText = "اسمي أنور";
String banglaText = "আমার নাম আনোয়ার";
String urduText = "میرا نام انور ہے";
String hindiText = "मेरा नाम अनवर है";
String frenchText = "Je m'appelle Anwar";

System.out.println(arabicText);
System.out.println(banglaText);
System.out.println(urduText);
System.out.println(hindiText);
System.out.println(frenchText);
}
}

On running the output is:
Hi World!
???? ????
???? ??? ???????
???? ??? ???? ??
???? ??? ???? ??
Je m'appelle Anwar

See screenshot:






To resolve this you need to Modify your Run Configuration:
To Open Your Run Configuration. This can be achiebved by:
In Package Explorer, right click on your project
Run As-> Run Configurations


Here In the common Tab, check the Encoding used:

Change it to UTF8.
Click apply and Run





Now Run the program and you should find correct result. New output is:

Hi World!
اسمي أنور
আমার নাম আনোয়ার
میرا نام انور ہے
मेरा नाम अनवर है
Je m'appelle Anwar

See screenshot:

You can download the repository having the sample code from Gitup. See: https://github.com/Anwar-Faiz/Simple-Java-Unicode

Sunday, April 23, 2017

Pen drive show empty even when data exists : SOLVED : Hidden files/ Virus Security

This is a common symptom when your computer, hard drive or the PD is infected with a malware. You are 100% sure that the disk contains data but that is not visible in the file explorer.

Now there can be multiple ways ti identify and fix it. They are mentioned as following:

1. Simplest is to check if the files are hidden and your explorer settings do not allow you to view hidden files.
To overcome this go to the file/folder settings View -> And select the 'Show System or Hidden files'

2. You definitely have to eventually scan the disk by Antivirus. Do that and the disk will become clean again

3. There is a short DOS level command that could help you overcome the situation.

Steps:

a. Open the DOS command. For the newbies, its a Black command terminal window
You can start it by goint to Start -> Run ->cmd

b. Change your working drive to the target drive. For eg. if your pendrive or disk is E: drive run the following command on DOS terminal
That is, type the following command and press Enter

E:\>attrib -h -r -s /s /d e:\*.*

Now this magical command will not display anything on the terminal. But your work will be done!

This will recursively make all your files and folder on the target drive as Non-hidden.

So now go to File System explore of Windows and open the drive. Voila! Your items are now visible!

Friday, March 24, 2017

Fatal: bad Object error in Git cherry-pick - Why Exception is thrown during cherry picking in Git ? *

In one of my earlier blog post, I explained how to cherry-pick in Git. To understand more about what does cherry picking a commit in git mean and how to do it, refer:
W3LC: Git Cherry Pick Command Tutorial

This post is to deal a situation when you get a fatal error in your attempt to cherry pick. The error is as follows:
"fatal: bad object"

So here I would like to explain why this occurs. The cause is that there is no information about remote branch on your local system.

Technically, if the branch is not locally present - you don't have the right data. You will errors like " fatal: bad object "

Solution:
To solve this you first need to fetch information on your local system. To do this use fetch command of Git.

1. fetch just the one remote
git fetch
2. or fetch from all remotes
git fetch --all

Here we should take a short break and understand what is Git Fetch command:

W3LC Definition: In the simplest terms, git pull does a git fetch followed by a git merge.
This means that the fetch operation never changes any of your own local branches under refs/heads, and is safe to do without changing your working copy. A git pull is what you would do to bring a local branch up-to-date with its remote version, while also updating your other remote-tracking branches. This updating your other remote-tracking branches is called as fetch.


So, let us assume that you fetched the information about all branches.

Now, make sure you're back on the branch you want to cherry-pick to. And use the git cherry-pick command again. Example:
git cherry-pick 9505ac61c924de0bba404f40f8abdc53af1909d8

Great. Now it should work!


Do also read if you want to change the name of your git branch. The process to do so is explained fully on my earlier blog post:
W3LC: Git Rename a Branch Name

Git : Cherry-pick a commit in branch

Friends, it a very common situation that if you are in a new branch of your own but want to bring information or changes from another branch.

Sometimes you also land in a situation where you have been asked to cherry pick a commit. But you have no clue idea what it means! Trust me. That was the case with me when i heard this while I was in Symantec. The history is that we used Perforce for the version control, but a new team started using Git. And cherry picking was something that needed a beer to actually understand ;)

So what does cherry picking a commit in git mean? How do you do it?

Solution:
Cherry picking in git means to choose a commit from one branch and apply it onto another.
Note that it is different from merge and rebase which normally applies many commits onto a another branch.

Syntax:
git cherry-pick

Example:
First make sure you are on the branch you want apply the commit to. For instance suppose you have to bring changes in master itself:
git checkout master

Now Execute the following:
git cherry-pick
Eg: git cherry-pick 3d05ac6159e4de0bba404f40f8abdca3af1903d3


Voila!
You're done. Just check your branch for the new changes. The diff history will show you changes in that commit to enter in your branch as well.

CAUTION:
In case you get an error like:
fatal: bad object 02x661db5adf2anwarJamalFaizeacf09f048b8b11
It means that the branch information is not locally present. To solve this I have already written another post. Thank me for this ;)  http://www.w3lc.com/2017/03/fatal-bad-object-error-in-git-cherry.html


Note:
Do also read if you want to change the name of your git branch. The process to do so is explained fully on my earlier blog post:
W3LC: Rename Branch Name in Git

Git : Rename / Change Branch name : How to Change the branch name of a local or a remote branch in git

There are multiple scenarios if you want to change the name of the branch. Sometimes you could have named a branch incorrectly, and sometimes it could be because you didn't follow the naming guidelines as per your team and organisation. Whatever be the cause, you very well need to know the method to do so.


The process is as follows:

1. First, rename your local branch.  (Sometimes you need to only do this. For example if the branch is yet not pushed on stash.)
If you are on the branch you want to rename:
Syntax: git branch -m new-name


2. In case you are on a different branch:
Syntax: git branch -m old-name new-name


3. Now suppose you want o delete the old remote branch and push the new-name local branch.
Syntax: git push origin :old-name new-name


Or, 4. You can also reset the upstream branch with the new branch local branch.
For this you need to switch to your new local branch and then:
Syntax: git push origin -u new-name

Tuesday, February 28, 2017

CD with mapped mounted drive on network : CHDIR command


It has happened with me that I was able to succesfully mount a network drive and can freely access it using Windows file-system Explorer. But my script was not able to access it. Digging a step further, i noticed that I could not even CD to that drive on command prompt. Hence i finally wrote this blog post for anyone running into the similar issue.

Question : How do I change to a mapped network drive at the command line?

Issue:
Say, you have a networked drive mapped to "U:\"
Now you want to go to that drive from a command line.
However, when you try you get an error suggesting
C:>u: The system cannot find the drive specified.


Solution:
There are two aspects to the solution:
1. The Syntax to use CD command on Windows may be the cause. Remember that for changing directories you should use cd /d U: rather than just U:
2. You should first start using the map drive on command prompt. Command used to do that is as follows:
net use u:

See attached screenshot showing the error as well as what happened after solution.




C:\Users\mfaiz\Downloads>net use p:
Local name        p:
Remote name       \\sxa.xxx.xxx.com\ap-xxx
Resource type     Disk
The command completed successfully.

Tuesday, January 3, 2017

What is BHIM App? Android Payments App in India for Unified Payment Interface (UPI)

The Bharat Interface for Money (Bhim) app was launched on 30 December by PM, India.The app is developed by the National Payment Corporation of India (NPCI) and uses Unified Payment Interface (UPI) for the transactions. The app is very simple to use, has a clean interface and incorporates multiple security features. Industry stakeholders have called the app a gamechanger when it comes to the ease of making cashless payments in India. However, the application faced extremely high server loads on launch day.


As explained on the Google Android Playstore, BHIM is an initiative to enable fast, secure, reliable cashless payments through your mobile phone. BHIM is interoperable with other Unified Payment Interface (UPI) applications, and bank accounts. BHIM is developed by the National Payment Corporation of India (NPCI). BHIM is made in India and dedicated to the service of the nation.



How does it work - BHIM usage guide:


Register your bank account with BHIM, and set a UPI PIN for the bank account. Your mobile number is your payment address (PA), and you can simply start transacting. Yes! It is that simple.


Send / Receive Money: Send money to or receive money from friends, family and customers through a mobile number or payment address. Money can also be sent to non UPI supported banks using IFSC and MMID. You can also collect money by sending a request and reverse payments if required.


Check Balance: You can check your bank balance and transactions details on the go.


Custom Payment Address: You can create a custom payment address in addition to your phone number.


QR Code: You can scan a QR code for faster entry of payment addresses. Merchants can easily print their QR Code for display.


Transaction Limits: Maximum of Rs. 10,000 per transaction and Rs. 20,000 within 24 hours.


Which Banks support BHIM App?
What all Banks support are inter-operable with UPI?

Supported Banks are listed as follows. This information is sourced from the App description itself:
- Allahabad Bank
- Andhra Bank
- Axis Bank
- Bank of Baroda
- Bank of Maharashtra
- Canara Bank
- Catholic Syrian Bank
- Central Bank of India
- DCB Bank
- Dena Bank
- Federal Bank
- HDFC Bank
- ICICI Bank
- IDBI Bank
- IDFC Bank
- Indian Bank
- Indian Overseas Bank
- IndusInd Bank
- Karnataka Bank
- Karur Vysya Bank
- Kotak Mahindra Bank
- Oriental Bank of Commerce
- Punjab National Bank
- RBL Bank
- South Indian Bank
- Standard Chartered Bank
- State Bank of India
- Syndicate Bank
- Union Bank of India
- United Bank of India
- Vijaya Bank


Features lacking in BHIM App and other Security Concerns with BHIM App:

Presently, Languages supported are Hindi and English. More languages have to come soon to support regional languages of India. Also, there are many initial pain-points in the App that are listed as following:

We should revisit the transaction Limits: (Presently it is Maximum of Rs. 10,000 per transaction and Rs. 20,000 within 24 hours.)

Some have reported that the App is only useful if you have a debit card The app has good intentions and i appreciate it. To register an account under upi, the app forces one to enter partial details of the debit card details. I consider this as a requirement gap.

Some say that it is waste of time and stucks or hangs at many places

Security concerns are there. Undoubtedly, it needs PCI clearance and has to scale good on OWASP threat scales. Presently, there is no clear documentation describing these fine details. IT savvy folks are presently not joining the BHIM revolution.


As a conclusion, I would say that it is a good start. More focus should be given on security. And, also since the App is majorly controlled by government officials, proper business continuity plans and threat mitigation units shall be setup. For a proper success, we should be good on security scales as we are not so strong on the corruption index ;)

All in all, Congratulations for the Banks and NPCI to come up with this App. For easier and seamless Payments systems and a boost in digital market, initiatives like these shall be the corner stones. Lets wish the App and initiative the best of luck. May we prosper. May we excel.

Cheers :)

For more information: visit https://upi.npci.org.in/static/faq/en_US/

Thursday, December 15, 2016

Little 'r' me - Meaning and origin of this in email

Very often in our corporate mail boxes we get to see where members of a large email distribution ask to Little 'r' them.
This simply means to reply to them.

Advantage:
1. Reply goes only to the sender and replies do not become a spam to all in the mailing list
2. The sender can discuss some personal aspects also individually with the recipient.

Now, another question is from where did this term come from. And, it is basically this point which is interesting that how did it gain such widespread adoption.

Here are two possible reasons that convince me th emost:

Thought A:

It comes from early UNIX Email systems. From the early days of the The Internet, we used single-letter commands. The lower-case, or little, "r" command meant to reply
 to the sender. Alternatively, the capital "R" meant to reply to the sender and the other recipients.

It is this huge love with UNIX, this term has not been forgotten in the evolution of the Internet. It was hence carried forward by lots of UNIX geeks into a common internet slang.


Thought B:

Gmail has also been around now for more than a decade now. And, habits of Gmail can also be one of the reason for the evolution of this internet term.
Actually, if you want to reply just to the sender in Gmail, you just need to hit 'r'. And, if you want to reply all then you needed to hit 'a'. So, here again the term Little 'r' fits the bill.

Now, before ending let me again remember it for you - You can Little 'r' me at Toughjamy@Yahoo.com.

Wednesday, November 23, 2016

Where/How to create web.xml : Eclipse project - (Example using Jersey in Java)


Tip: Dynamic Web Project - - > RightClick - - > Java EE Tools - - > Generate Deployment Descriptor Stub. This would create Web.xml

Starting all over again from the question:
If you are doing Java programming to create some Service using Jersey or any other framework, you will many times land into situation where you need Web.xml to be created. I had once wondered where this file would be present. Or, better say, how should i create the Web.xml file.

Note that the web.xml file should be listed right below the last line in your screenshot and resides in WebContent/WEB-INF. 


If it is missing you might have missed to check the "Generate web.xml deployment descriptor" option on the third page of the Dynamic web project wizard.


Tip: Dynamic Web Project - - > RightClick - - > Java EE Tools - - > Generate Deployment Descriptor Stub. This would create Web.xml


A sample content of Web.xml can be as follows:



<?xml version="1.0" encoding="UTF-8"?>

<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xmlns="http://java.sun.com/xml/ns/javaee"
   xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
  http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
   id="WebApp_ID" version="3.0">
   <display-name>User Management</display-name>
   <servlet>
      <servlet-name>Jersey RESTful Application</servlet-name>
      <servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
         <init-param>
            <param-name>jersey.config.server.provider.packages</param-name>
            <param-value>com.tutorialspoint</param-value>
         </init-param>
      </servlet>
   <servlet-mapping>
   <servlet-name>Jersey RESTful Application</servlet-name>
      <url-pattern>/rest/*</url-pattern>
   </servlet-mapping>
</web-app>


Take Care.
- Mohd Anwar Jamal Faiz

Friday, November 11, 2016

Install and Launch Postman API Testing App in Chrome

The Postman is a post-apocalyptic science fiction novel by David Brin. Oh! come on! I am talking about Postman - The tool for Web API Testing. Postman is a Google Chrome app for interacting with HTTP APIs. It presents you with a friendly GUI for constructing requests and reading responses.

This post is related to the installation steps and way to launch the app in your browser.



1. How to Install Postman API Testing Tool. Where to get it:

Steps:
Search Google "Postman Tool". You will get the link. Or dircetly go to Chrome store at https://chrome.google.com/webstore/detail/postman/fhbjgbiflinjbdggehcddcbncdddomop?hl=en

On the RHS there is Install button. You can click that. And, it will add 'Postman' App in your browser. Once done, the button will become Green saying 'Launch App'

See below:





2. Verify if the Postman App is installed on Chrome

Steps:
Launch the extension Manager in chrome
Shortcut URL: chrome://extensions/
You can check that Postman is there.

See below:





3. How to launch Postman App in Chrome

Steps:
Launch the App launcher. You can separately install another app which acts as launcher to App
But here is a short way too. Which i personally prefer:
Go to Chrome App:
URL: chrome://apps/

See below:



Click Postman to launch it.
The App will open up.

See below:



Now enjoy ;)